Nur eine ganz blöde Idee: Hast Du mal ausprobiert was passiert, wenn Du für das geparste Dokument die Kodierung angibst?
$doc = new DOMDocument('1.0', 'utf-8');
utf-8 sollte zwar eigentlich laut Doku die Defaulteinstellung sein, man weiß bei PHP aber nie :-O
ja, habe ich versucht, änderte nichts.