Have you ever written a program where it was important to handle filename character sets Right? Were you able to do so?
(My opinion on this issue is strongly influenced by writing the filesystem interaction code for a VCS. Users in different locales may want to work on the same project, but they write the same filenames differently, and some charsets may not be able to even represent filenames created in other locales, and...)
There are arguments for the current system, but "simplicity" is really not one of them.