Hola abimaelrc,
utilizar la función htmlentities() para transformar los caracteres especiales en las entidades me crea otro problema.
Es decir, si codifico:
$node = $dom->createElement("nombre",htmlentities($markerObj->nombre)); //error
Al visualizar el XML recibo el error:
Error de lectura XML: entidad no definida
"<markers><marker><nombre>Joyería pepa</nombre><.."
y aparece una flecha de color rojo apuntando a la primera aparición de carácter
&
Así que sigo sin tener un XML bien formado