To put it differently, there's a reason why volunteers don't get to write off some additional amount of income that would represent time spent volunteering. You don't get to reduce your taxable income by, say, a certain amount per hour for every hour you work for a charity for free. Why is that? Because you are already getting a deduction on the income you never receive but you nevertheless have earned for your valuable provision of services.
Let's use a practical example. If you provide accounting services to your clients worth $90 per hour and donate $180 to a charity, you get to write off $180 from your income. If, instead, you work for the charity for two hours, you have provided $180 of services and you are not taxed on the provision of those services. Cash donations and time donations are equivalent.
Look at what happens if you take the deduction away. The cash donor's income remains $180 higher. The volunteer, however,should now have $180 additional income imputed to earnings. Both would incur a tax liability on $180 of income beyond what they would without the deduction. This is just what eliminating the deduction means.
If it seems strange that a volunteer would be taxed on income not actually received, that is because you haven't internalized the idea that income foregone and income transferred to charity are the same. Neither are really income for the recipient at all.