UI Language is what decides this. See this MSDN blog post about the differences. While it doesn't specifically mention usernames, it does say that:
The UI language in Windows is the language the system uses to communicate with the user.
That tells me that prior to logging on, this is the language/locale settings that Windows presents to the user. That way one could type a username using characters on their Afrikaans or Japanese keyboard, as long as the system's UI language is set to Afrikaans or Japanese.
Also, this article says that (under the Windows Desktop App Development breadcrumb/tree)
The system uses Unicode exclusively for character and string manipulation.
Now, that said - google tells me (as you mentioned) that default Windows handling of usernames is "case-aware" but not "case-sensitive", meaning that it will store the case as specified when a user is created, but doesn't care about it when checking credentials. Active Directory also appears to be case-insensitive.
From that I read that there is some hard-coded case-change of the entered and saved username during authentication, which means that there must be some hard-coded assumption of UTF-8 characters if the UI language is set to en-US (and probably any en-* language/locale). I don't know if it would do this for any "western"-based locale, though; I couldn't find anything on that.