Transliteration is difficult to do universally. Although, for example, it's quite common for ß in German to be transliterated to ss, for some characters in some languages it's not appropriate to transliterate, and in many cases the same character would be translated to different values depending on the language. For example, we've had bug reports saying æ should be "ae", so we changed it, then another bug report said it should be "e", so we changed it again, then we had a third bug report saying it should be "ae" again.
Languages which don't use latin characters at all (any east-Asian language) simply cannot be transliterated. So you end up with all your URLs being "/topic/123-/" which no friendly URL element.
It is the proper way to do things. As you yourself point out, the RFC which defines the standard for URIs says that characters may be UTF-8 encoded - it does not suggest transliteration.
It's good for SEO (otherwise you sort of defeat the point of friendly URLs).
If you would like, when you come across something you can't translate for this reason, post a bug report. While I understand the point you're making is more attention should be paid to it anyway (which I agree with, and is something we will focus on in 4.0), we'll happily fix any cases pointed out.