Yes, but
Yes it's the law that's the problem. Your suggestion would make a sensible workaround. Except, it's too simple and easy, and simplicity is the enemy of corruption - whoops!
However, I think you do your argument no favours by progressing it from the entirely sensible (Vodafone not paying Uk corp tax on German earnings) to the contrived. Yes of course Starbucks is doing the right thing given its structure, but the issue there is: was there ever a legitimate reason to create that structure in the first place?
That is, if you don't accept tax avoidance as a legitimate reason. Your argument would be all the stronger if you'd stopped at Vodafone and not taken it into territory that requires that question to be answered. You've given anyone who doesn't accept the legitimacy of tax planning a weapon with which to rubbish you there!