In a nutshell yes. The cake owner could have said they just don't want to bake them a cake, or suggest they go elsewhere. Not a problem. By stating it was because they are gay, it is a breach of the Equality Act 2010, part 3 item 29 - http://www.legislation.gov.uk/ukpga/2010/15/part/3
And I guess if a private bus company only wants to take whites - that is their choice, they can have a clear sign 'Whites Only'. Or a shop that doesn't want to serve Jews can put a sign up in the window 'No Jews' - it's their choice. That's how a civilised society works right?