Yes indeed, the game probably reads the encoding line, but what for?!
If I open say the ThechTree.xml on my german set Windows with my english Visual Studio version , a lot of "illegal" characters are thrown in, mainly "||" for linebreaks I guess. Quite annoying if you want to use a standard xml reader .net implementation, it generates a runtime error.
So I need to buffer all xml files and filter for the ocurrence of "||" , instead of directly accessing/reading 
Please devs, fix this finally.
My guess is, that not everybody at SD has UTF-8 based system available, hence the "compatibility" line, or some of them doing xml file with some weird editor, lets say word
.
I think, the game used to require iso but they silently changed it to no/or utf-8 requirement
As a sidenote, TA does not seem to require that line at all to read data, so my guess is, one could even ignore the encoding line.
File created with my GalCiv2Ide get read, with or without.