I have no clue why Apple uses raw characters in some but not all contexts (my only Apple product is iPod).
I'm not making an argument, since I don't use OSX and have no concern about how it behaves. The point that case-sensitivity is "normal" in that every character is a naturally different value, so overriding this is an explicit decision with consequences. Case was overridden by Microsoft for Windows, which generated much criticism and to this day lots of hassles for heterogeneous OS/data environments. It's the reason mailing lists and BIG databases often have everything in all-caps, using just the "original" ASCII characters that exist on every platform. Lots of programming languages are case-sensitive, in commands and/or variables ("FirstName" and "Firstname" not being the same thing), so developers often use all-caps or all-lowercase to avoid creating obscure bugs.
Database users are sometimes spared the case challenge because many apps are intentionally case-insensitive, while others make this optional. Of course, to appear to be case/accent-insensitive requires an OS or programming language or database to have an internal equivalency table, therefore to make decisions about what different characters to treat as identical. A = a might be an easy choice, but what about these same letters with the several accents used in various languages? Who's in charge of deciding that an umlaut doesn't matter?
Accent-sensitivity is important to handle text that might arise in German, Swedish, Spanish, French, etc, etc -- either ignore the accents, which might lead to bad data, or treat them as distinct characters but with side-effects. The problem of "For" and "for" being different might be a by-product of being accent-sensitive, which often requires being case-sensitive too -- treating every character as unique.
This can be handled at the app level, if allowed. For instance, IBM goes to great lengths to support almost every written language around the world. IBM Lotus Notes allows both case- and accent- sensitivity to be separately enabled per database, per view, etc. They have carefully tuned the equivalency tables that get turned on/off by these options, and documented what = what.
Other than the behavior of the Tags window, MC seems to be case-insensitive, though possibly accent-sensitive -- a design decision that was probably debated, so maybe Matt will explain. Apple made a different decision, perhaps because of the world-wide market and many languages they encounter. If there are MC users on this board who deal with non-English accented Roman characters, perhaps they can say how MC behaves.
It's just a complex situation with no simple "one size fits all" solution. Simply ignoring case and accents can lead to a mess unless the environment is totally controllable.
As I said, I force MC to write all filenames as lowercase, but on the database/tag side, it's a work in progress. My main library is 60K+ records, and it's an ongoing project to locate and fix variations in Name, Artist, etc.