Some people are confused, and I think it arises from the myth that a public holiday is a 'free' day off work.
Well it isn't. A public holiday is a working day, unless you work in a bank or other public sector position that entitles you to not work on that day.
The definition of your entitlement on a public holiday is in your employment contract. Unless it says otherwise, a public holiday is a working day, in which case, if you're sick, you'll receive SSP for that day.
If your contract said that you are entitled to take a day of paid leave on that day, and you booked a day of paid leave, then you would be paid for not working.
If you booked a day of leave, and then were taken ill, then whether or not your employer lets you 'unbook' that day of leave is up to them - they're not obliged to. Plenty of employers are scammed by some people who are prepared to lie about being ill. It's amazing how many people are taken ill as soon as they arrive back home after a lovely refreshing two-week spell in the sun.
If the day you booked was a public holiday, then it's no different.
What the OP seems to be expecting is to receive a full day's pay for a public holiday that's in the middle of their period of illness, having already been paid for it. Apart from the technical reasons that make that a non-starter, how morally warped do you have to be to think that that's in any way fair?