Conceptually, this appears to be a useful extension. Some implementation issues do arise however, so it might take a little bit of time to work out a final solution - but perhaps a partial step forward might become clear in the meantime.
Short-term questions: Do we implement a cloneNode() method (or just override clone() and implement Cloneable) or provide a copy constructor? Also, I suspect it needs to be a deep clone method. Is there ever a case where a shallow clone might also be desirable?
Longer-term questions: Should we also provide a similar facility for XmlSlurper? DOMCategory?