If the government believes that it's in the public interest to have low income housing, then the government should pay for it. It's not exactly the same as the homeowners paying themselves, either. Structuring it this way ensures that the cost is allocated fairly across all of society. If we believe that it is in societies interest to have low income housing, then society as a whole should pay for it. The cost shouldn't just fall on a few unlucky homeowners. Making the cost widely and evenly shared makes it equitable.