I don't think camera projection is at all a good idea here. There's no good reason for it, and it just introduces another area of possible error into the process. PlanY is what you need to be using, and if you set the size of the images the same, they should line up. But of course there's a bit more to the whole scene setup than that.
First, it depends on how you're loading your "heightfield". If you're using Heightfield Load, and using an image format without embedded scale data (i.e. anything but TER and GeoTIFF), then it will scale it at 1 meter = 1 pixel. So if you have a 10,000x10,000 pixel map, it'll be 10,000 meters square. You can adjust this of course, but that's the default. So if you then brought your color image in with an Image Map Shader you'd need to scale it to 10,000x10,000 to match (and make sure the position matches of course). rAlternatively, if you're using an Image Map Shader to load both, and just applying Displacement with one, then the scales just need to be set the same in both shaders.
Anyway, you mentioned you had problems with the Image Map shader, but it's hard to know exactly what was going on. If you could post an image showing the problem, and/or a TGD scene file with your current setup, we can probably help more.
- Oshyan