GV Mobile + works great, in Canada too.
For Canadians you just need a US phone # to sign up for a Google Voice account. I have two #s which I forward to my Canadian mobile phones. Numerous very low-cost providers of US #s are available.
While push notifications of SMS messages would be nice, I understand how the developer might have a challenge to implement. I found a simple solution though; I have Google Voice forward all my SMS messages to an email account that sends a push notification to my phone. (There are several great ones available for just a dollar or two.)
As a result, GV Mobile + makes a very complete Google Voice solution, especially for Canadians!
Thanks Sean.
Traveling Matthew about GV Mobile + for Google Voice