Because the vote needs to unanimous and some countries don't want to give up their revenue stream.
In case of Starbucks: they move a ton of their profit to a coffee bean exporter from Switzerland which they own themselves. And how should a government say how expensive those beans can be?
Any company can outsource part of their revenue to a subsidiary in a different country like that and it would be extremely hard to encode in law when they wouldn't be allowed to do this "because of taxation". Uber could for example move their cloud management costs to some company in a low tax country, or maybe have their developers outsourced to some low tax country. How would you decide that is "valid" outsourcing vs "tax cheating" outsourcing?