***** and gay are not offensive unless they are used as an insult. I've never heard "ma'am" used as an insult. The reason some women don't like it is because it makes them feel old, but that's their problem, not the speaker's.It used to be that ***** and gay we're not offensive, also.It is a form of courtesy and respect.
OK, now back to trains. Just be courteous and respectful of the staff and patrons and it is fine.
I'm at an age where "miss" seems too young and "ma'am" feels a bit beyond me, but I would never, ever get upset with someone for calling me either. I think it's polite, and I appreciate it. I also use "ma'am" and "sir". At my job, we are required to call policyholders by name, and I hate it. My solution is to ask, "Is it okay if I call you Tom, or do you prefer Mr. Smith?" That way, I've technically said their name and won't get dinged on a call evaluation, but I didn't have to compromise my principles.