Then don't touch them. Advise the customer that their contract/service agreement doesn't cover them and refer them to your boss/manager. If they get shitty at you, then leave and advise your boss/manager. (It's better to fire a shit customer than a good employee).
Oh, I don't. I know better than to mess with something I don't understand when it's not mine to potentially destroy.
I know its hard to say "no" to a customer, you want to be helpful, (I've been there), but if it's not part of your job or contract with the customer, then it's not your responsibility. If you get onsite and its a mac issue, call your boss/manager and get them to make the decision, basically CYA (Cover Your Ass) if something goes wrong.
That's basically how it went, but at the time it felt like a bit of a lame cop-out. I'm almost certain it caused us to lose that client, albeit I wasn't blamed for it or anything.
Imagine, you go onsite, find it's a mac issue and can't get it working (and unknowingly making it worse). Customer gets shitty, blames you, calls your boss, and all of a sudden you no longer have a job, as: a, you worked on something not in scope of the contract, b, you caused harm to the customer, c, customer is now suing your old workplace for loss and damages due to your incompetence/neglience. (not saying you are incompetent/negliant, but that's how the customer sees it).
Extreme scenario, absolutely, but I've seen it with my own eyes multiple times.
This scenario is precisely why I don't touch them. My luck is such that if I'm not 120% sure about something, it'll blow up in my face, so the "extreme" scenario is absolutely what flies through my head every time I'm out of my depth.