I am aware of this issue, unfortunately it is difficult to fix as it would require changes to hundreds of routines for consistency. For example, in the hilite feature alone, changes would be required in the wildcard matching routine, the regex matching routine, the string search routine - and not just the string comparison routine. Multiply this across hundreds of other routines. Also, it is not clear cut whether Unicode normalization (and of which form) should be used everywhere, as it can have security implications. On top of that, there will be an inevitable slow down across all features where CompareString() is used, so routines that use it would need to be carefully optimized. This is on my to-do list but it is a major project. Thanks for your comments everyone.
Note: If anyone has had experience with Unicode normalization/best fit/transcoding/mapping/security issues in applications and recommended practice, your input would be appreciated.