what you write is correct, but not the whole story.
just because the latency is longer on the 1600 memory that doesnt mean its slower ram. for measuring "performance" we would should consider the time it takes to make request until the time we receive all data needed, not just the data in one specific address space.
so in your example, even though the 1600 is slower to respond to a address request it can transfer the data faster. there will be a threshold point where to the left of that point the 800 memory performs better, but to the right of that point the 1600 memory performs better, all depends on how much data is needed, etc.
i had a recent run-in with memory options, ddr3-1333 CL9 or ddr3-1066 CL7. my mobo supports both, so initially i thought (so did Crucial chat person) that the faster 1333 ram would be a better choice. turns out my Athlon II X2 runs max speed of 533, but will support the 1333 ram by running it at slower speed. so in my case the faster 1333 ram would have been a poor choice.
if the mobo supports both rams modules, and the modules have different CL's (like the choices i had), then either ram is a good choice.
the best choice of ram is to match the fastest memory with lowest timings (CL) the mobo supports (without down clocking the ram, etc).