[Please note: Despite some of the wording in this post, this post does not contain any specific advice.
This post, like all my posts, contains only general information and it should not be relied on as a guide to any individual situation. Please retain counsel if you need legal advice.]
So do I understand this situation correctly? Is she going to be stuck paying the IRS tax on income they shouldn't even care about?
No, your wife doesn't have to keep paying US tax on income from sources outside the US if she doesn't want to. She can relinquish US nationality at any time and then she will only be subject to tax as a nonresident alien for US tax purposes. As a nonresident alien, she would only be required to pay tax on income from US sources and income effectively connected with a US trade or business.
If you search the internet, you'll read about an alleged high fee to relinquish nationality, but this is bogus. According to 8 USC § 1481(a), a US citizen shall lose US nationality if she "voluntarily" performs an act in the enumerated list "with the intention of relinquishing United States nationality". One method of relinquishment is renunciation before a US consular officer in a foreign state pursuant to 8 USC § 1481(a)(5) in the form prescribed by the Secretary of State. The Secretary of State does charge a fairly significant fee for that service, but it's only one way to relinquish US nationality. There are other ways that are free. In particular, 8 USC § 1481(a)(2) provides that a US citizen gives up US nationality by voluntarily (and with the intention of relinquishing US nationality) taking an oath or other formal declaration of allegiance to a foreign state after turning 18. This is something that your wife can do at any time to relinquish US citizen for free (for nationality purposes).
Somewhat bizarrely, the tax laws actually contains a slightly different relinquishment regime. For nationality purposes, your wife would give up US citizenship simply by voluntarily performing an expatriating act while having the relevant intention. No notification to anyone is required. However, for tax purposes (pursuant to 26 USC § 877A(g)(4)), your wife will not be treated as giving US citizenship until she furnishes to the Department of State a "a signed statement of voluntary relinquishment of United States nationality confirming the performance of an act of expatriation". The law apparently does not require this to be in any particular form. Alternatively, instead of sending a statement, your wife could file
Form DS-4079 (Request for Determination of Possible Loss of United States Citizenship) to obtain a certificate of loss of US nationality, the issuance of which also establishes relinquishment for tax purposes pursuant to 26 USC § 877A(g)(4)(C). The Form looks like more work than simply sending a statement and, moreover, using the Form allows the Department of State to disagree with you and not issue a certificate.
After complying with the notification requirement of 26 USC § 877A(g)(4), your wife would no longer be a US citizen for tax purposes. In order to memorialise that she has expatiated for tax purposes, the IRS requires the filing of
Form 8854. Unless your wife is pretty wealthy, she will not face any expatriation tax, because it is a tax on unrealised capital gains and it only applies to the portion of unrealised capital gains above $680,000 for 2014 (adjusted for inflation each year, so it will be higher for 2015). At age 26, your wife is unlikely to have that magnitude of unrealised capital gains, but of course it's not impossible.
So, the truth is, your wife is not forced to pay tax on her TFSA while living in Canada. That is a choice she is voluntarily making.
Americans often want to have it both ways. They want the ability to enter and live in the US for any reason, taking advantage of the very strong US economy and job market, and they also don't want to pay the taxes that come with that privilege. There are many people in the world who would gladly pay the taxes for the privileges of US citizenship, including the right to enter and work in the US for any reason. That is an especially valuable privilege in the context of this forum because it is much easier to get rich in the US than in Canada. Of course, there's nothing wrong with not wanting to pay tax; many people don't like to pay tax. Just recognise that many people globally would gladly pay it in your stead.
All that said, if your wife is not going to relinquish US citizenship, then you should get some professional legal advice on her tax obligations, because from your post, it does not sound like she knows what she is doing, and the laws are complicated. It would be unreasonable for me to summarise everything here.
Finally, I should note that the IRS did not create any of these rules. Your complaint there lies with Congress. The IRS is simply implementing the law as crafted by your elected representatives.