IME, Linux has a long way to go for non-dual-head setups. I have four monitors with different geometries on two graphics cards on a Hackintosh and OS X handles it seamlessly. Ubuntu pukes hard and dies (or, almost as bad, just ignores monitors) when it can't figure out how it should handle them all in a single X session.
A single X session cannot span two graphics cards. X just doesn't support it. You're waiting on Mir or Wayland for that one.
If you manage to get all four monitors on one card somehow, X can handle the multiple geometries just fine. Though it will generally do a terrible job of automatically detecting the right resolution.
In my experience the state of graphics drivers is still a bit of a sad affair on Linux in general. I never got my two screen setup working properly, not out of the box, and not after fiddling with xorg.conf etc. for more than two days.