Thing is the Catholics aren't being "bad" people. If you genuinely feel that gays are evil perverts, then it is obviously your duty to keep them away from kids.
If Catholics (or Moslem) want to avoid helping gays, then the state has no legitimate role in making them do so.
If a bunch of people want to serve their God by doing good works then fine. Adoption is the clear corollary of the Catholic position on abortion. Many MNers won't agree with it, but if you're going to ask women not to have abortion, it is right and proper to help deal with the baby.
However "Charity" has a specific meaning in Britain. You get all sorts of tax breaks, and often get money as well.
But if they want help from the state, then they have to give up discrimination. That means no peppercorn rates for their offices, no VAT exemptions, and donations will get an extra 23% from the taxman.
The Catholic church record for the last 1,000 years shows quite clearly that this stimulus would cause them to change their mind PDQ.
Also, note that there is a shortage of "adoptable" kids. ie very young white healthy ones. Someone who has a source of those is able to exert considerable power of adoptive parents who are very emotionally vulnerable.