I’ve ran into the same thing; some code I wrote when I was still using NVIDIA drivers refused to work with ATI’s fglrx driver because my code depended on GLX 1.3 being available.
As a test I disabled the GLX version testing in my code but that just made the glXMakeContextCurrent() call result in a BadDrawable error. Changing that call to glXMakeCurrent made my whole machine lock up, though I had some fbconfig bits left in there that may have confused ATI’s driver.
Some googling around gave me the idea that the ATI (fglrx) drivers as well as the Mesa-based drivers are stuck with GLX 1.2 (server-side). I also peeked at the sources of some applications (glfw, quake3, glxgears) and they all seem to restrict themselfes to using GLX 1.2 functions (i.e. no fbconfig stuff). fglrx seems to be somewhat of a special case since it does support things like pbuffers but doesn’t advertise it (the wine sources hinted at this).
I’m a little confused too because the OpenGL Linux ABI requires OpenGL implementations to export GLX 1.3 functions and (although I’ve forgotten where I read this) some documentation also discouraged using GLX 1.2 calls to set up a context.