prova questo:

echo "<PRE>";
echo htmlentities($doc->dump_mem(true));
echo "</PRE>";

e vedi se ti crea la struttura corretta. Se te la crea allora i problemi possono essere:
Path non raggiungibile
Path non aperto in scrittura


Prova anche a fare:

$doc->dump_file(realpath("test.xml"),false,true);