The tiling window manager options on Linux are so good that I've dropped the desktop environment entirely (Gnome, KDE, etc.) and am just rolling with a TM, lightweight theme and icon package for a quite nice gtk3 look.
OSX wins in out of the box "just works" and bling departments, no argument there, but otherwise it holds no appeal, this bird has flown...
Anyway, for a very nice gtk3 look you can try StudioFlat off of the Gnome Look site, and gnome-icons-brave via whatever your package manager happens to be.
The tiny xcalib package (100kb) is also worth grabbing, hook up to xbindkeys and you get screen color inversion _per monitor_, very bad ass, your eyes will love it.
Also, the Z-ordering of windows seems really odd. If you have multiple windows open from two apps, and you ⌘+` between them, sometimes all of App A windows are brought to the front and App B windows are hidden. Other times only one App A window is brought up. Meanwhile, if you have App C chilling on a different monitor, it may or may not disappear at random.
Even if it worked as intended, it would be flawed when compared with Alt+Tab on windows.
Is there some company edict, or cultural pressure that discourages it ? I don't see how any of these issues could have survived early-alpha (of Lion, and ML, and Mav., etc.)
command-tab will let you toggle back and forth between last two apps - sort of a classic alt-tab behavior from Windows and various UNIX WMs.
command-tilde goes through your windows in a stack, in one direction, and you have to modify it with shift to go a different way. Further, if you destroy a window after command-tilde to get to it, suddenly the direction gets reversed, and you will then command-tilde back the other direction.
So ... one of these is "wrong". I'll leave it to you to decide which. From my perspective, the ability to rapidly switch back and forth between two windows of the same application is valuable, and I hate having to modify it with shift as I go back and forth...
Command-Shift-` will reverse the order Command-Tab will flip back and forth unless you exceed the delay while still holding command, at which point you can cycle through the stack. Holding shift reverses the direction.
That being said, I agree that swapping back and forth in between windows of the same app is very useful and it's a pity that the two features aren't made to work in the same way. I'd like to do a quick Command-` to toggle two windows, or hold it down to see the list of windows for the current app.