The real mind shift that has to happen is acknowledging that DOM is a public playground, not a hands-off sandbox.
Years ago, my limited understanding led me to believe that I shouldn't be polluting DOM nodes with my properties, because the browser owned the nodes. But actually there's nothing wrong with it. Yes, you're playing in someone else's sandbox, but your toys are yours, and DOM knows nothing about them. Best of all, DOM is very generous in allowing you to play with its toys, in order to build even more complex castles.
All of this is to say that two sandboxes (DOM and VDOM) are really not necessary, and a single sandbox is where I prefer to expend my creative energies these days.