Figured this out. For anybody having a similar issue, the solution is sort of two-step as described below.
1) After setting the hair component (Component #2), call the SET_PED_HEAD_BLEND_DATA native method. Not sure if the order matters for those two actions, but this is what I did and it worked. Calling the native Head Blend method will set their face shape & skin color, and for some reason it also fixes the green hair issue.
2) [OPTIONAL] After calling the Head Blend native method, all hair will be black by default. If you want to change it to another color, you will then need to call the _SET_PED_HAIR_COLOR native method.
Two important notes about the _SET_PED_HAIR_COLOR native method:
When trying to call the method by name, it was crashing LSPDFR and my game. I had to use the CallByHash method to call it.
This method does NOT work until you've called the SET_PED_HEAD_BLEND_DATA method as described in step 1.
Sample below for illustration purposes... (read: this specific example not tested, but should work)