It seems that the ATI MergeFB is seen as Xinerama for the number of screens, but then get informations (via XF86VidModeGetMonitor()) on second screen fails :o/
Thanks for the trace information.
So with MergeFB there is no way to access the video LUTs for individual screens. Unless this is fixed by ATI, then all I can recommend is to turn off MergeFB, and either run with separate screens or turn on Xinerama, if you want to run color calibration on X11 with multiple monitors. At the moment I don't know of any means to detect if MergFB or TwinView is running rather than Xinerma, and the best I might be able to do is catch the X Errors at the right point, to make the error slightly more benign.
I also found some usefull options in the radeon driver:
Option "MergedXinerama" "boolean"
Since merged framebuffer mode does not use Xinerama, apps are not able to intelligently place windows. Merged framebuffer mode
provides its own pseudo-Xinerama. This allows Xinerama compliant
applications to place windows appropriately. There are some caveats.
Since merged framebuffer mode is able to change relative screen sizes
and orientations on the fly, as well has having overlapping viewports,
pseudo-Xinerama, might not always provide the right hints. Also many Xinerama compliant applications only query Xinerama once at startup; if
the information changes, they may not be aware of the change. If you are already using Xinerama (e.g., a single head card and a dualhead
card providing three heads), pseudo-Xinerama will be disabled.
This option allows you turn off the driver provided pseudo-Xinerama extension.
The default value is TRUE.
Which explains why Argyll thinks there are two screens, while the ATI MergeFB XFree86-VidModeExtension implementation fails to allow access to these screens.