1. find your photos. preferably high quality, but not necessarily giant dimensions. the more pixels there are the more chance it could get warped when you downsize it.
2. crop your photo as desired, preferably using the 'rule of thirds'. some people crop really close to the face, some people crop all the way to the crotch, but you really just have to find a happy medium depending on your taste and the photo you're using.
3. resize the photo, but be wary of your resize settings. when i upgraded to cs6 i was unaware of the options for resizing and had a major loss of photo quality when i would resize them to 100 x 100. on cs6 make sure you select 'bilinear' on the dropdown menu. in other programs or versions you may not have to mess with anything, or you may need to test it out. if your crop wasn't totally even, always make the smaller of the two numbers 100 and then use 'canvas size' to let the program crop the part that's too large.
4. some photos don't need to be tampered with at this stage, but if it seems to have a lack of contrast or to be discolored, try messing with those settings. to save time, i like to try 'auto tone' and usually it improves the photo a good deal and just makes it clearer. sometimes, though, it will discolor it or add too much contrast, so manual might be the better option. don't worry about getting it perfect, just make it a little more crisp if you think it needs to be. once you're somewhat cozy with it, go head and right click on your layer and click 'duplicate layer'.
5. make sure the top layer is selected and go to your filters to find 'gaussian blur'. it will prompt you to set the amount and i use '1.0', but this is something you can play with when you feel brave enough to see how the effect changes. i discourage going about 2.0 though.
6. there should be a drop box above your layers that probably sits at 'normal', but you want to put it on 'darken' and then drop the opacity of that layer to around 30. again, this is a setting you can tamper with to your liking once you've got the hang of how it all works.
7. i like to select the bottom layer and pull up my 'levels' by hitting ctrl-L, or using the adjustments dropdown menu and then adding a little bit of black to define the edges some more. to add more black, simply slide the arrow on the left towards the right just a smidge. if the image is too blurry, you can also grab the sharpen tool and give that bottom layer a once-over. not too much, though. just enough to make it crisp (i guess this is my go-to adjective, wuteva).
8. now you want to right click on any of the layers and select 'merge visible' so that everything turns into one single layer.
9. go to the adjustments tab and go to 'brightness/contrast' and lower your brightness a little then up the contrast. you don't want to whitewash anything. this should give your icon more definition. you can also bring up your 'levels' again and perhaps lighten the middle-ground by dragging the center arrow to the left a smidge and then add a LITTLE (like '1') black for more definition.
10. MOST IMPORTANT STEP TO EVER EXIST IN THE UNIVERSE OF STEPS EVER. when you save your icon, you MUST save as a '.png' file or you will lose the high quality look you worked so damn hard to achieve. you probably now understand why it takes me so long to make a set and why there's usually only 30-ish icons in a set when i post them. this is not a two-second crop/resize/upload sort of thing. it takes patience, so stock up before you start the process.