My son came home with terrible cradle cap (we adopted him from Guatemala) at 11 months. My pediatrician said to rub baby oil on his head before his bath (let sit about 10 minutes) and then take a soft tooth brush or rag and gently scrub it, then use mild soap to wash it out. We did that and it took about 2 weeks to get rid of it.
I wish I would have been told earlier to use olive oil the same way. I have heard the olive oil works much quicker.
Another note change your shampoo to a natural soap such as California Baby, Jason Baby or Just for Kids shampoo available at Whole Food, Fresh and Natural Foods & other organic grocery stores, some BabiesRUs stores and Target has a small selection of organic section. These shampoos are organic and made very mild.
Our adopted son gets severe eczema from other soaps and when it is very cold & dry. My husband sometimes had used his bar soap and caused his eczema to flare up. I will never again use another soap on him because I do not want to ever risk the eczema and cradle cap returning.
Good luck