Why are these filters producing different results? I'm working on a view, and I'm trying to apply a global filter (based on a field known as School Year). I've set up the contextual filter and I've added the block used to set the filter, but after setup, I receive completely different results - they have very few similarities, and the contextual filter narrows the view down to about 20% of the expected results.

On the other hand, when I do a standard Views filter using School Year (this time, determined locally), it gives all the expected results.

Basically, my confusion stems from this: if I'm trying to use the same data, stored either globally in a block or locally in a standard filter, why does that give me different results? How can I fix that?  What might I be missing?

EDIT: Despite my answer below this seems to only be working on one of my views - but even though I replicated the steps on another view, it provides the same unexpected behavior, so it only applies to half the views I need it to work on.
I actually figured it out - as it turned out, I missed a small but important detail. The original (local) filter included a relationship to a content type within the view, which was providing the correct results. When I went back to edit it, I'd noticed that when I created the contextual filter, I hadn't provided the relationship to the filter. Upon adding the relationship, everything worked out the way I'd intended - getting all the expected results. I still don't know why I was getting that unexpected behavior, though.