The setup you described seems to work. However keep in mind that SIP clients can eat up your iPhone battery very quickly when you have it running in the background. Personally, I use Counterpath Bria as my SIP client on my iphone.
You might want to reconsider using Callcentric. Their technical support isn't very good as it takes them a long time to reply to support tickets. You might want to also consider les.net and Vitelity. Their technical support is very responsive when it comes to support tickets.
If you want to go a bit more advanced, you might want to consider installing Asterisk (with FreePBX) onto an old computer or a RaspberryPi. Your VOIP trunk can then point to the Asterisk PBX. With Asterisk, you can do lots of cool stuff.
As an example, when I travel, I forward my Fido cell phone# to a temporary DID# at les.net which then rings one of the extensions on my Asterisk PBX. On my iPhone, I would sometimes run Counterpath Bria which registers to the extension on my Asterisk PBX. At the same time, "call forwarding no answer" is setup for that particular Asterisk extension to forward incoming calls to a local SIM card I am using (should I not have Counterpath Bria running in the background on my iPhone). Sometimes when I go to the UK and use a local UK SIM, I set the "call forwading no answer" on my Asterisk PBX to forward the call using a local UK VOIP provider.
When I don't have Counterpath Bria running in the background:
Fido Cell Phone --> Les.net DID --> Asterisk --> (via UK VOIP Provider) --> UK Cell phone# (using UK SIM)
When Counterpath Bria is running in the background (usually when on wifi at a hotel etc.):
Fido Cell Phone --> Les.net DID --> Asterisk --> Extension for Counterpath Bria