Here, software engineers must follow an engineering program at university, spend at least 2 years working under an Ordre des Ingénieurs member's supervision, and pass a test before they can use the title of (software) engineer. The mandatory courses cover things like ethics, sociology, physics, electrical and electronic circuits, computer architecture, differential equations and numerical methods, and vector calculus.
Even Microsoft's MSCEs can't use the word "engineer" here: http://www.microsoft.com/canada/learning/quebecmcse/default....
Now, it's true that "programmers" don't require certification. The Ordre des ingénieurs and Quebec are thinking about ways to make the programmer profession more regulated, but it's of course hard to implement without an international agreement on the matter.
A "programmer" can be someone who picked up PHP in their spare time, and may have a degree in art history, for all anyone knows. It can also be someone with a solid background in CS, with a degree to boot. Both of them can get jobs as "programmers" (though in this case, probably very different wage scales) if they are good enough to get hired.
So if software engineering certification is institutionalized worldwide tomorrow, my bet is it won't change a thing in practice. The problem is with the discipline itself, not with what is written on the credentials.
Libertarians, sheesh!
Until then, using the title "Software Engineer" is a bit like a man who plays Warcraft all day calling himself a "Raid Engineer".