It never worked quite right, since ancient DOS times there was several bugs with this.
What surprises me, is that it STILL doesn't work right.
I have a Windows set to english, keyboard to Brazillian, and had to set "locale" to Japanese to play some Japanese games that outright crash otherwise (they don't even render wrong, they just crash).
I lost count of how many times programs instead of using Unicode when they could, tried to figure a codepage from my location (and end with Brazillian), language (english) or "locale"( Japanese), and do it all mixed up and wrong.
Stuff I saw:
Important installers (for example drivers and expensive software) that render the interface in japanese and EULA in portuguese but with US codepage.
Japanese font + portuguese text (ending in utterly non-sense).
English text + brazillian font... and many others.
Still, to my is is merely an "annoyance", but a similar issue made my mother panic completely:
My dad coded for my family business a software to do some mandatory tax stuff in Brazil if you do any business at all (a sort of tax report for every single transaction), he did it in PHP, for Linux, but running on Windows, so far so good...
Then one day he had to fix a bug, and the only machine was WinXP... he fixed the bug, and suddenly the program started to dump lots of corrupted data to government servers (as you can imagine that is really bad).
We went to see, and fors ome reason now it is sending codepage 437 formatted data, and we have no idea why, we can't find what changed, an we didn't even used a windows based editor (we used Geany on WinXP).