Photoshop CS has a great new "Match Color" feature which may help for this type of work. Put the head on one layer, the body on another, and use the match color command between the two. If you don't have CS, try the normal color correction tools. Actually, you'll probably need to use them anyway to get an accurate finish.
After that, careful use of layer masks, cloning, healing, airbrushing, transforming.... the usual photoshop stuff.
As doublexpressions suggested, though, careful selection of source images is essential. You could spend twice as long correcting unsuitable images and it may only look half as good!