IBM’s Bill Higgins takes a very unusual way of explaining why Mac apps should look like Mac apps and Windows apps should look like Windows apps. It also explains why desktop Java failed.
I’m not sure his analogy really holds, but I’m not sure it doesn’t. His conclusions are correct, even if his reasoning and/or evidence turns out to be faulty.
He makes a good argument that SWT is the right way to design a cross-platform GUI, and Swing is the wrong way. The problem here is that empirically Swing delivers more native cross-platform apps than SWT does. When theory clashes with experience, either the theory is wrong or there are factors not accounted for in the theory. I suspect the latter here.