Hi,
Looking at your code, nothing looks incorrect to me, but I normally use LINQ to XML to access and manipulate content instead of the strongly-typed object model, so I may be missing something.
In general, if you need to generate documents from data, I recommend using the DocumentAssembler module in Open-Xml-PowerTools.
http://www.ericwhite.com/blog/blog/documentassembler-developer-center/
Watch those videos – you can do document assembly without writing code.
If you go down that path, and if you continue to use the strongly-typed object model, I recommend closing and opening the document any time you switch between using LINQ to XML and the strongly-typed object model.
Best, Eric