8833 vs. Foreign Tax Credit

I am a US citizen and recent German tax resident with UK, Canadian and US pension and investment income. For the last few years, I have declared my worldwide income to the IRS, but entered a large negative adjustment to income  for items taxable in Germany, which is most of it, and linked them in the explanation statement of Form 8833 to the relevant clauses of the US- DE Treaty.  Then I pay German taxes acccording to their regime on my world wide income.  No complaints so far from the IRS and the total tax paid to all jurisdictions  is reasonable.  But am I doing this wrong?    Must  I instead list all income (including US source income) as income resourced by treaty to Germany on various Forms 1116 and then  attempt to figure out what the German tax actually came to for the Foreign Tax Credit ?  A  complication is that Germany has the  treaty right to tax some foreign pension income, but then deems it 'tax free' and uses it to determine my tax bracket for the rest.  Are they taxing it according to the Treaty or not?