It was only very recently that WebKit2 handled most of this stuff -- up until then they just had a single WebProcess (I think Safari on Mavericks is the first multi-WebProcess browser Apple have shipped). So it's a hard problem and isn't due to some lack of competence that Mozilla have been slow to adapt. FxOS is fully multiprocess afaik.
Actually getting the rendered page image into a window owned by another process is easy: windows and X let you host HWNDs and Windows from other processes (if you choose to allow your WebProcesses access to the window server) or you could draw into a shared memory segment. The hard stuff is all of the regular browser hard stuff.
This also ignores the other important benefit of mparch: sandboxing. The browser needs some elevated access but the page content does not.
(I also don't see how a one-process-per-DOM model prevents any other forms of sandboxing inside the browser. The OS doesn't understand webpages and cannot isolate them from each other - the browser does - so sandboxing pages is the browser's responsibility...)