クロスプラットフォームを目指す以上、Swingのデフォルト表示で統一したい所だけど実際問題ユーザーは満足してくれないし、プラットフォームに依存しすぎるとRun anywhere とはいかないし、苦渋の選択という奴だったんじゃないかなあ。
引用元: Javaのルック&フィール | g200kg Music & Software.
JUCEというC++用のクラスプラットフォームUIライブラリがあるが同様の問題を抱えていると思う。Javaに限らず、OS間のルックアンドフィール統一はすごく悩ましい問題だ。