You need to remember for your sake, that your son is actually being well-rounded, by playing with everything. Role playing with dolls, be it princesses, babies or superheros or GI Joe, is all about learning and imitating social constructs he sees adults in his life acting out every day. He is using his imagination to the fullest and learning to be a inclusive person. He is friends with girls and he wants to play in a way they enjoy when he is with them, that is great....I bet some of those girls play cars and legos too! I would hope so anyway.
Just becasue he likes to role play with dolls ( call them female action figures if it makes YOU feel better) and not everything he does is destruction or violence (like many little boys), some is creativity and love and nurturing, that is especially great. He will be a great boyfriend, husband and father some day, as long as you get over your issues and make sure to praise him for playing, in any positive way.
Our kids pick up on lots of things we don't realize they see/or put together. The other day I had to scold my son for hitting his sister with a toy, I removed that toy from play and put my son and the toy in separate "time outs" - he started crying. Big sis says "Why are you crying Will?" He says "Mommy hurt my feelings!" She responds "It's OK Will, its Mommy's job to hurt people's feelings."
SO that made me feel pretty crappy....but i explained to them, although their feelings may get hurt that that is not my goal, my goal is to help them learn to be good people, and follow rules and not hurt others. Because, if they don't follow rules, others might get hurt, and so might the child themselves....so if you don't want to get hurt, feelings or otherwise, follow the house rules, which include not hitting with toys or hands - then there will be no consequences.
Sometimes as moms we feel crappy about the ways our kids percieve us, we just have to be strong enough to decide if WE are the problem, or if hte child percieved our actions wrong, and then be able to explain what is really going on either way.