If, for example, you decide to start freelancing, you still have to pay all of your self-employment taxes to the US, on top of the similar taxes here, even if your income is well below 100k.
Also, if you decided to start a company or start-up (i.e., anything that is not a sole proprietorship), you get into a hell hole of other compliance regulations that makes it VERY expensive. It effectively mean no one wants to cofound with you or invest in you. Having US citizenship while abroad is terrible for entrepreneurs. (source: conversations with other Americans who have tried and failed to launch startups here for these reasons)
Countries have tax agreements that settle expat earnings and social benefit contributions.
The big difference it seems is the reporting obligation which is more or less unique to the US, in most other cases you settle the taxation once you return.
But the US has higher capital gains and estate taxes than Canada, and you may be charged there: http://www.theglobeandmail.com/news/politics/delays-costs-mo...
Doesn't the income tax treaty help in that case? Quoting from https://www.irs.gov/pub/irs-trty/canada.pdf: "Subject to the provisions of Articles XVIII (Pensions and Annuities) and XIX (Government Service), salaries, wages and other similar remuneration derived by a resident of a Contracting State in respect of an employment shall be taxable only in that State unless the employment is exercised in the other Contracting State. If the employment is so exercised, such remuneration as is derived there from may be taxed in that other State."
I'm aware of the foreign income exclusion you're refering to, but wouldn't the tax treaty have a higher priority?