Overclocking your memory is generally easier than lowering its latencies, and doing so can compensate for having higher CAS settings.
For a 200MHz DDR400 module, at CAS2, its access latency in ns is given by:
L = (1 / 200^6) * 2 = 10ns. (This is theoretical.)
At CAS3, to find what clock speed you'd need to attain the same latency in ns:
L = (1 / Clock) * 3 = 10ns.
Clock = 3 / (10^-9) = 300MHz.
So in order for a CAS3 module to attain the same access latency as a 200MHz, CAS2 module, it needs to operate at 300MHz.
I should stress access lantency here, because that's what we're dealing with.
Memory operates in bursts, that is, once the initial access penalty is over, data can be sent every clock cycle. At this point, performance is determined by clock speed alone.
There are some applications that don't care much about latency but love bandwidth, and for most, a CAS3, 300MHz module is going to outperform a CAS2, 200MHz module.