Does WordPress already have the facilities for switching between punycode and IDNA?
http://www.phpclasses.org/browse/file/5845.html
is a pretty good class I have used in the past, I am hesitant to include it with my plugin especially if the issue is already addressed in WordPress, but also because if the issue is not addressed then I would rather advocate for the issue being officially addressed. Maybe even by including that class (it is GPL2.1)