I'm in the middle of doing this right now. I ordered and received a SIM from t-mobile for around $4:
http://prepaid-phones.t-mobile.com/sim-card. Obitalk themselves provide this link in their "port your number to Google voice" so its legit. If you don't go through this link then the SIM cards are more expensive.
Some additional info;
I also bought the SIM card listed above. Actually, I bought it from Amazon for a couple dollars more. Regardless, it wasn't necessary because I bought a $10 T-Mobile Kyocera Rally prepaid phone at Walmart, which included a SIM.
I tried to enter my Vonage information online while setting up a T-Mobile prepaid account. No matter what info I entered, the system kicked it back as invalid. So, I called T-Mobile and gave them the Vonage info on the phone. They called me back three days in a row telling me the Vonage info I provided was being rejected. I finally spoke with someone competent who said that, with my permission, T-Mobile could contact Vonage directly to request the number port. The next day (in the middle of the night), the prepaid phone received a text indicating the port was complete. Entering #686# into the Kyocera phone now displays my ported number. When I previously entered #686# (when the phone was out-of-the-box), it displayed a different number.
Google Voice shows my number as available to port. Previously, when the number was associated with Vonage, Google Voice indicated the number was not available to port.
As of this moment, I think I'm in phone number limbo. While my number now shows up on the Kyocera phone, I don't technically have a prepaid account with T-Mobile.
Unfortunately, I'm traveling at the moment and don't have the Kyocera phone with me, so I'm not going to do anything until I return home next week.
Tipsy