How complicated could it be?
To take an example. Let's suppose the govenrment decides on 10% of your income (I'm not saying this is the amount I'd support, but just a hypothetical example). So you give 10% of your income to a charity, keep the receipt, and come tas time you mail the receipt to the government. Done.
If you didn't do it, then you give 10% of your income to the government. And if you don't do that, then the govenremnt takes it from you and fines you a fair service charge for its troubles.
Besides, we have this to some degree already when we can claim part of our charitable contributions on our taxes. This would be no different except taken further.
What would be the issue here?
Government could still pass laws placing requirements or restrictions on institutions. So it could still control how that money is spent indirectly. But by ensuring that the money is not actually in government hands, it provides certain checks and balances (i.e. the governemtn could say how the money is to be spent, but the governemnt doesn't get to hold th emoney in its hands).
For instance, the government could require all schools, public or private, to meet certain criteria. This would be a classic example of how it could still direct spending. But of course the school itself would do the spending to meet the criteria, and this would just add to checks and balances. Charities would thus have to compete to ensure the money is used as efficiently as possible.