I don't think you really understand how the offshored profits work. It's not just that money isn't brought back from overseas, but that money made in the US can be sent overseas. You create a wholly-owned overseas company that gets paid to do some kind of work for you. Then you way overpay them for that work. As a wholly-owned subsidiary, all the extra money they hold is actually owned by you, but you don't pay taxes on any money you send them because you call it an operating expense. So you effectively send a bunch of money overseas untaxed. Your German division does the same thing, and now all your money is sitting in the Cayman Islands waiting for a tax holiday so you can bring it home.
Your German company scenario is incorrect as well. Firstly, because they don't have to make any significant profit in Germany. US Sprocket GmbH could buy the sprockets from US Sprocket Inc at nearly the same price they sell them for, transferring the money to the US corp while paying almost no taxes in Germany (high revenue with equally high costs means no profit). Secondly, Deutsche Sprocket GmbH is dealing with the same "double taxation" in the US, so it's not an economic disadvantage.
That's not true. Companies aren't free to set transfer prices. The IRS has many rules on how much a company can charge a foreign unit for a product (and vice verse). That method of tax avoidance was closed a long time ago.
It was not closed, it was reduced. Companies are still doing it. They wouldn't continue if it wasn't beneficial to do so.
US regulations also don't do anything to transfer prices in other countries. Google apparently pays something like 2.4% tax on their foreign profits because they funnel them all to the Bahamas.
I won't argue that companies are still trying to reduce taxes through transfer prices. However, any company that tries to avoid US taxes through transfer price schemes is not going to get very far. I have no doubt that Google is funneling a lot of revenue through the Bahamas, but they must have setup the off-shore corporation in such a way as to fall outside the jurisdiction of the IRS. To say that they are only paying 2.4% on "foreign profits" means nothing. If that's what they are supposed to pay, then nothing is wrong right? Google is an international corporation.
I think the policy dilemma is that you are both right to some degree. If it wasn't such an ideologically charged issue, the solution would be quite simple. Tax repatriated profits but reduce the amount payable by the taxes paid overseas. Or enter into a double taxation agreement with the countries involved.
I think it would be reasonable to reduce the tax by the amount of foreign tax paid, but I don't think it would fix the problem. Most of the money in offshore havens was barely taxed. So instead of 35%, Apple can pay maybe 30% bringing it home. That's not enough of a drop to motivate them. It would probably open some more loopholes, too, but I can't be sure about that.
The real issue is that some countries want to allow this stuff. They want these shell companies because it brings them some revenue they wouldn't otherwise have. And who can blame them, really. So as long as we have international companies, we'll have tax havens. I'm not sure if there really is a fix.
Companies already get to reduce their US tax by the amount of tax they paid a foreign government. The issue here is that that they've moved the profits to places where little or no taxes are paid at all. This is not about double taxation.
Your German company scenario is incorrect as well. Firstly, because they don't have to make any significant profit in Germany. US Sprocket GmbH could buy the sprockets from US Sprocket Inc at nearly the same price they sell them for, transferring the money to the US corp while paying almost no taxes in Germany (high revenue with equally high costs means no profit). Secondly, Deutsche Sprocket GmbH is dealing with the same "double taxation" in the US, so it's not an economic disadvantage.