Looking at it from a HR point of view it sounds like you are completely right and they have to pay it for those who work it just as they would any other bank holiday.
I am guessing that the problem is that when they priced their contracts with the client they didn't know about this so the cost isn't accounted for in the contract price. They are probably planning to ask the client to pay the extra to cover the extra pay and if the client says no they will try not to pay it because it will have to come out of their profit on the contract.
It is a difficult one because the client could be awkward and say no the contract price is the contract price or they may be willing to negotiate to cover some of the cost. It will depend on the client, the contract, the relationship and how crappy the buyer is feeling the day they ask
I am a kind and considerate buyer so I would be willing to discuss it and probably pay something towards it if the supplier (your company) was also willing to take some of the cost and make savings elsewhere to minimise the cost to the client.