If you are using PRI you may run a debug isdn q931 in the Voice Gateway to see whats the real number CallManager is sending as Caller ID.
Make sure you External Phone Mask Number is configured in IP Phone and enabled the Route Pattern or Route List used for External Calls. In the GW there's an option for preserving Calling number (Originator) is the default.
Sometimes I have seen that Telco overwrites the number when call flow is the following:
Cell Phone| PSTN ---CCM---> CellPhone|PSTN
Telco Switch overwrites that info despite CCM sends the correct originating number.