I’m pretty sure that if something is marked up at that price on the shop floor, then they have to sell it to you at that price
Not correct I’m afraid. Any advertised price, including inside the shop, is an ‘invitation to tend’ (eg, a suggestion of where to start negotiating a price), and not a legally binding contract.
A shop worker can quite happily refuse a sale, for any reason they like, including an incorrcetly marked price. Or no reason at all, just because they feel that way. After all, you can’t force someone to sell something to you.
Interestingly, it is a legal requirement for EVERYTHING on display to have a price attached. Trading Standards pick us up on this all the time.