Copy the background layer and add layer mask.
Make your selection and copy this selection.
Go on channels and add an alpha channel.
Paste your selection in this alpha channel.
Now adjust this selection with a brightness/contrast adjustment for nice clean
contrast between black & white. The lower area will need another alpha channel
for different brightness/contrast adjustment.
Copy this alpha channel.
New brightness/contrast adjustment for lower area.
Now select the 1st alpha channel (click command and the alpha channel).
Go on your layer mask.
With brush tool, take off some parts of the background (black on white on mask).
Come back on channels and select your 2nd alpha (alpha copy) (click command and the alpha channel).
Take off the rest of hair edges with brush tool.
Now deselect and click on option and layer mask to go on layer mask.
Clean some parts with white brush on layer mask.
Clean some parts with black brush and burn tool on layer mask.
Add a white background layer below to see the result.
Now add a darker background for some more adjustments.
Copy your "background copy" and switch the blending mode to multiply for the original "background copy".
Go on the new "background copy 2" layer mask.
Now with brush tool, ideally with low opacity or pen pressure with Wacom tablet,
clean off softly all the grey part. And finally, if some edges appear with too strong
contrast or too black, you can use the same brush to softly reducing the contrast
on the original "background copy" layer mask.
Finally you can make some adjustments on hair for a better integration with some adjustment layers. You can also draw some hair if necessary but need to be realistic.
So I hope it was helpful! Ciao!