なぜ、マルチプラットフォームの開発環境の話で、どうでもいいかも知れないOS固有の機能を呼び出すことばかり考えるのか分からない。
そりゃ、特定のOSの固有の機能をバリバリ使うという特殊なプログラムなら、他のOSへの移植しやすさが半減したりもしくは逆効果になることもあるだろう。
逆に聞くと、Mac OS Xと、Windowsと、iOSと、Androidの四つのOSで動くソフトを作る場合に、
別々の言語、別々の開発環境で作ったほうが楽なんだろうか?
Objective-Cと、JavaとC++の三言語で作るの?
しかも全く共通しないIDE使って作るの?
楽だと思えばそうすればいいしが、普通は楽でないと思ってマルチプラットフォームを諦めるだろう。
マルチプラットフォームを諦めたくないとか、最小限の労力で他のOSに移植するためにC++ Builderがあるんだよ。

四大OSに、マルチプラットフォームブログミングをなんらかの方法で実現している人からの批判なら分かるけども、
最初からマルチプラットフォームを諦めている人からの批判とか無意味。

モバイルとデスクトップでGUI共通を実現してるのはC++ Builder/DelphiとQtだけ。
他にはGUI機能が少なくてゲーム用って言っているものがあるぐらいだ。