If more people stood up for themselves like that, SB, the work-place would be a much better environment. The problem is that there are too many people who are eager to toady up & agree to unreasonable demands, when they should all be saying, 'Get real!'. I've seen examples loads of times, and it bugs me.
Like a fortnight before the last royal wedding, our ops manager where I worked then called a meeting to inform people the bank holiday was discretionary for employers, and they weren't giving it. However, the management had decided they'd quite like to watch the wedding, so the building wouldn't be opening up that day - hence we couldn't come in, and would have to make the time up.
Even though everyone was mad about it, they all stood there mute and glassy eyed, which pissed me off. I didn't. I pointed out that if staff couldn't access the place during their contracted hours, the company would be legally obliged to pay them, and had no recourse to insist on the hours being made up. The manager actually smirked when I said that, and walked off without responding, because he knew I was right.
He sent a colleague round to ask everyone when they would be working the time back and compile a list of the commitments. When she came to me, my answer was, 'Never'. They didn't deduct any money from my wages, because they knew I'd take it further if the did. So when people where whinging to me about having to work the Saturday or extra hours in the evening to give the time back, I wasn't sympathetic. I just suggested they not do it - but they all did anyway.