Today I called Dish to cancel service. I thought that since today is the first day in my billing cycle it would have made things easier: no additional billing for service and exactly 9 month of ETF to pay. Not so fast. I found out that I still had 9 months and 2 days remaining in my commitment so I would have to pay for 10 months of ETF. I chose to pay to more days of service just to avoid being charged for a whole month of ETF.
As an advice for people thinking of cancelling their service: call ahead and ask Dish the day your commitment anniversary is to avoid incurring extra charges.
As a comment on Dish policy: this stinks because the "24 month commitment" is not actually 24 month as any reasonable person would count and, to my knowledge, this is not disclosed to customers when they sign their contract.