I consider solving a problem directly to be less bureaucratic than solving it indirectly by involving even more parties and hoping they do what you want them to do and having to negotiate with them on how much they will do in exchange for what they are getting.
Taxpayer pays x to government which pays workers to clean.
Taxpayer pays x-y to government which pays x-y to government workers who need to go out and negotiate without private businesses and inspect to see if they are doing their job and then punish them if they are not and then deal with disputes. And it is very possible for y>x.