I feel everyone's pain. I was VERY disappointed NOT to see a CC button on the new remotes (Hopper/Joey). There are a lot of times when one viewer needs the CC and the others don't, and they have to come crying to me to turn it off (because I forget to set CC back to off for them). C'mon, Dish, it could be a button in a depressed hole like the RECOVER button on past remotes, just in case Dish was worried subs might accidentally turn it on or off.
There is no standard as to how the CC is handled DIGITALLY--OUTSIDE of ATSC (your local broadcaster using an OTA antenna connected directly into your HDTV. The old analog standard cannot be used for digital STB's because STB's and HDTV's use line doubling and other enhancements that eliminate line 19 and the data on it. If you playback a DVD at 480p (activating your progressive line playback option) you LOSE CC even in the analog component connection because your DVD player has altered the display of the lines and for practical purposes it is buh-buy to line 19 as we know it and all its data. In the digital realm (excluding ATSC), CC is handled by the set-top-box, NOT the TV.
The program provider is responsible for providing or producing the CC data and sending it out with the programming. It seems broadcasters are the only group required to support CC. Unless the law has changed, there is no mandate that anything in the digital realm, such as satellite STB's SUPPORT CC, but manufactures do because CC is now a legacy service.
In the non-ATSC digital realm, each is free to technically support CC as they wish because there is no mandated standard for encoding programming data (outside of the CableLabs regarding digita, but that is an industry convention, and that adaption is approved and regulated by the FCC for reasons of access for 3rd parties such as TiVo).
In some cases DirecTV and Dish have incompatible or significant differences in the methods of transporting programming data from platform to encoding, etc.
So, the MVPD received the programming and CC data along with it (method not mandated because it is a closed circuit "turnaround," but often standardized so that MVPD's like Dish only have to deal with one sort or model of demodulator, keeping costs and complexity down. Now, Dish has to encode all that data as they see fit to the best efficiency of their system, just as long as they re-enode the CC in such a way (any way) that their sat box in your home can receive and display it. This results in an overlay that is display as part of the picture. The CC data stream is NOT recorded if you bump a show to a DVD, for instance. You are recording the picture only (as opposed to the old analog VCR's that recorded data, as well, because the data was stuffed in a line of resolution; digital can use separate packets for TV picture data, CC data, color data, luminance data, etc.), so you can not turn CC on and off on such a DVD recording. If you want CC on the DVD, then you leave the CC display to on when recording and the CC appears as part of the picture, so you can't turn it off, (nor on if you don't have it displayed during the DVD recording).
Now, this lack of a mandated standard in the digital realm is actually good, because it means the MVPD can quickly enhance or upgrade technology to provide us with MORE programming channels and services, otherwise we would be LOCKED into standard. Witness the horrible fact that ATSC is forever doomed to MPEG2 and many local stations suffer from the effects of too much data on too narrow a bandwidth that could be solved with MEPG4 to a very high degree. But if ATSC when MPEG4 overnight (the ATSC standard does support MPEG4, but this would also require a HARDWARE upgrade), a lot of angry OTA HDTV viewers would be plenty angry as they would have useless HDTV's for OTA or TiVo's or other OTA DVR's.
Now, in my experience, the CC is mess-up more often because of Dish, I would say, because it appears as gibberish, but if I skip back and replay, it may display properly (possibly how the data is read off the HDD). Other times it is just out of sync with the programming, and while that can be due to the production of the CC, I have found it to also be the fault of Dish. I think the CC on Dish has improved as History was a constant irritant, but now appears stable for all shows.
To be fair, there are other times when it is CLEARLY Operator Head-space from the individual who created the CC. Too many to list here, but fair to say that CC suffers from dumb operators doing the CC by hand, automated systems that can place CC data out of sync with the action (that is surprisingly ANNOYING) of in the case of cable, satellite, the MVPD's engineers monitoring to be certain that any encoding changes they make don't diminish the CC.
Now, the really big problem is the on-line streaming services. Again NO MANDATE to provide CC, but the few that do seem to do it VERY POORLY and on hardly any content. I often forget about this as I am so EXCITED that I can see some stuff on a streaming service, only to be reminded when I view it that is has NO CC.
The best thing we can do is contact Dish (as I've done in the past) and inform them of any problems with CC. It seems that Dish does listen and try to fix the problems when they occur or even contact the provider if it is on that party's end. But we must let Dish and all MVPD's know.