Well after some more research it appears that when Unity forwards a call it briefly flashes the the caller id of the unity port, then changes it to the caller id of the originating call. This works great when the call handler is sending the call to an external extension, because a 7960 will update the caller id while the call is in process, but if it is forwarding the call to the PSTN then it stays with the original caller id of the vm port, as the pstn does not support the change in number. Something tells me that this is not a behavior that I can modify.