reader.Read()
i reader.ReadOuterXml()
bycie w tej samej pętli spowoduje pominięcie jednej linii. Spróbuj tego :
using (XmlReader reader = cmd.ExecuteXmlReader())
{
reader.Read(); //For initial first read.
while (!reader.EOF)
{
results.Root.Add(XElement.Parse(reader.ReadOuterXml()));
count += 1;
}
}