Sorry to insult your intelligence, Dean. :)
This is a rather interesting problem, and I think I have solved it with this formula:
concat("0", field1) + concat("0", field2)
The problem was that the node wasn't blank, it just wasn't present. So, tacking a zero to the most significant digit will allow the nodes that are not present to simply be a 0 in the equation. I hope this helps!
Matt Faus / Microsoft InfoPath MVPQdabra® Software / Streamline data gathering to turn process into knowledge