I have stumbled across this post while investigating this exact issue.
I’ve finally managed to come back a revisit this one. Upon some further checking I noticed that when I selected the merge field in the doc template, the font size disappeared suggesting more than one font was represented. I don’t know how that happened because the merge field appears as a single font. No part of the token displays as anything other than the expected font. When I set a single font for the merge field the issue is resolved.
field in doc.Range.Fields)
Node currentNode = field.Start;
bool isContinue = true;
while (currentNode != null && isContinue)
isContinue = false;
Node nextNode = currentNode.NextPreOrder(currentNode.Document);
currentNode = nextNode;