If you are using only plain chars ASCII would be enough.
But the producers of the XML file are telling you that it might not be so, so you should expect to see some non plain ascii chars in the future.
As bart correctly pointed out, telling XML::Simple that the stream of characters you are passing is in unicode format solves your problem until the moment when the xml actually contains any special character that is not in unicode but in latin-1.
So, in addition to changing the information about the encoding format you must also convert the stream to utf-8
Unfortunately, examples like the one you brought here are abundant on the web, where the encoding info is not accurate and many people suffer from headaches dealing with such misleadings.
Some techniques are used to try and avoid such problems, like parsing the info assuming unicode format, and if that fails try the conversion from another encoding, and so on...
I'd recommend the following reading:
Perl Unicode
The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)