Based on a comment from this site (see below) this is probably caused because the CC1 and CC2 data is not being separated. Is it possible to separate it and only see the CC2 data?
For analog, it’s 608. And 608 holds CC1, CC2, CC3, and CC4. CC3 and CC4 are in field 2, while the other two are in field 1. I think Michael is decoding only field 1. I don’t know if he’s separating out CC1 from CC2, although it is rare for a show to mix these (but the Oprah Show used to do that for before it went off-air).
Field 2 also has other potentially interesting things, like the name of the show, the name of the next show to air, station id, etc, in addition to CC3/CC4 (in what is called an XDS stream).
For digital, the standard is 708, which has an embedded 608 stream. Few programs really fully use the 708 standard, though. You usually get away with just decoding the 608 stream.