Well, yes and no. This is a bit like saying that assembly language is a crappy, low-level, do-everything yourself model for creating applications, so that we should not use any language that compiles to assembly language. DOM/CSS/JS are just the brick-and-mortar, there. People are smart enough to build great stuff with them.
Awful stuff, too, of course, but we can just throw it away :)
1) It discards the network effects/value of having a common, regularly updated platform, shared across all applications.
2) DOM/CSS/JS are terribly inefficient building blocks in terms of processor, memory, graphics. Why waste resources on overly high-level building blocks that we just plan to abstract away.
If those building blocks are going to be abstracted anyway, then maybe we should just skip them. Should we build on top of canvas or WebGL instead?
Apple's accessibility work demonstrates that it is still possible to make native UIs be text-navigable/indexable/structured, which seems to be one of the biggest arguments for keeping the DOM.
For your second point, I somewhat disagree. JS is now quite efficient. Not CUDA fast yet, sure, but much faster than, say, Python, VB, and often much more memory-efficient than Java. To the point that some video games have been automatically recompiled from C/C++ to JavaScript (through Emscripten) and work quite nicely. Similarly, DOM/CSS are inefficient for really low-level stuff, but suddenly become pretty efficient for animations, for instance.
And, really, the biggest argument for keeping the DOM is not technology, but community: many people know how to use it to do cool stuff.
But yes, canvas + JS or WebGL + JS are also available, for applications that require them.
As for working with designers, no, I'm not a designer, but I find that implementing designs in iOS and Android native tools is far easier than attempting to jimmy HTML+CSS into implementing the behavior and layout as provided by a designer.
In the world of views, I can simply position them where I want and apply arbitrary logic to how they move, scale, etc. This makes it tremendously easier to implement complex designs than straight HTML/CSS.
eg, this would be equivalent to:
tableCell.textField.font = [UIFont ...]
The DOM/CSS/JS is a crappy, low-level, do-everything-yourself model for creating applications when compared to the state of the art in native UI/application frameworks. The result is a hodgepodge mishmash of broken, inconsistent application UIs.
Couple that with the inability for any existing browsers' JS runtime to make use of SMP in a single app (despite devices adopting multicore ARM), limited uptake of WebGL, no support for dropping to NEON or even just C (you pay for inefficiency with battery life and poor user experience), etc.
I'd rather see Google produce a NaCL-based set of application libraries that can run on both their Android phones, ChromeOS devices, and our existing desktops. Mozilla's insistence in continuing to invest in pure HTML/JS/CSS is myopic.