Improving DataSet Serialization and Remoting Performance
There's a new KB article on the subject.
I still did not compare the performance with my previous solution, but this solution is much more general than mine so I expect the performance to be worse but it can be applied to more scenarios.