You can buy a Rogers or Fido SIM via eBay, e.g.
these and then buy airtime at many stores here. I don't know if the SIM card comes preactivated with a phone number or if you have to do that while in Canada.
Overseas calls from Canada using any cellphone provider are very expensive, however, you can buy inexpensive prepaid long distance cards locally at many stores. Look at e.g.
Phone Card Depot. I've never dealt with them but their Search Card Rates function will show you many of the cards that are available here.
Added: You can activate a Rogers SIM online
here. Calls to Germany are CA$0.75/minute or ~€0.50. Prepaid long distance cards are less than 1/10th of that. Local air time is CA$0.25/minute (using a CA$20 airtime refill.) Note that air time is charging on both outgoing and incoming calls.