Just be careful of using floaters - they produce incorrect heights, as you can see on [hp]'s example. They will swim around the surface is used in a parallax map directly.
Regarding xnormal, I tried that recently. It turns out to be all flat grey though. Anybody got an idea why? I bake the highpoly to the lowpoly with a cage. Are floaters a problem?