Primeiro de tudo, presumir que o analisador XML opera corretamente. Se for incapaz de ler arquivos, bem a solução é óbvia.
O que nos leva a olhar como o arquivo é criado. Quando você chama Savethofile, o arquivo é aberto, escrito, fechado e buffers estão liberados. Em um sistema de baunilha simples, seu analisador XML verá todo o conteúdo do arquivo. A única conclusão é que algo está interferindo. O suspeito mais como o seu scanner de vírus. Muitos scanners, até os mais respeitados, não podem lidar adequadamente com um arquivo sendo fechado e, em seguida, imediatamente reaberto.
A linha inferior é que seu código está bem e o problema quase certamente está com seu ambiente local.