For some reason I hate being called ma'am by people who are not from the south. I know it is always meant to be polite and respectful but it makes me feel old when people from up here say it. I would never refer to anyone as a ma'am unless they were clearly middle aged, at least forty. Especially now that forty is really quite young, since people are living to be so much older than we used to. It seems pretty normal for people to live into their eighties these days. I think if it is clear that someone is under forty you should refrain from calling them ma'am unless you happen to be from the south where it is the custom to use the word much more freely in everyday language. If the woman is clearly under thirty I think, in most cases, you can still call her miss. In between those ages, just avoid using the word. Or use the full word, madame, which doesn't sound as dowdy to me.
I probably sound crazy. But I'm a pretty young thirty and I just cringe when people call me ma'am. It makes me think I must look so much older than I think I look. Do I have, like, deep waxy wrinkles all over my face? Am I one of those women people look at and pity because she looks like she's wearing her daughters clothes? I really don't think it's that bad. I may have gained a bit of weight the past few years but not enough to make me a ma'am.