Well, if you use CGContextSetRGBFillColor as you said, then that sets
a device RGB colorspace up as the fill colorspace, and device
colorspaces don't do color matching. Device means 'untagged'. Which
is to say, I don't know, sounds strange.
Well... I'm not sure that's true any more is it? I mean, don't all
the DeviceXXX colour spaces get mapped to the new "Generic" ones as of
10.4? So it may well be doing some sort of colour correction.