Скорее всего (в коде, который вы не показали), XPathNavigator создан на основе XPathDocument.XPathDocument доступен только для чтения по определению (именно поэтому он гораздо более эффективен).
Из документации MSDN :
" Объекты XPathNavigator, созданные объектами XPathDocument, доступны только для чтения, а объекты XPathNavigator, созданные объектами XmlDocument, можно редактировать. "
Если вы хотите обновить узлы с использованием DOM, вам необходимоиспользуйте другой объект - скажем, XmlDocument.
Конечно, люди давно (7-8 лет) назад поняли, что DOM - не самый лучший способ обработки XML.
Я определенно рекомендую выполнять обработку XML с использованием XSLT - языка, специально разработанного для преобразования деревьев .