I've been able to determine that my SIP provider is not altering the caller ID in this case. For example, I can set any number as the outbound caller ID of my extension, and the provider allows it to go through.
Looking at the Asterisk logs, I can see where the caller ID is being set. Full logs are here:
The incoming caller ID that should be preserved has been replaced with 13333333333
The DID number I am calling is 14444444444
The default caller ID of the trunk is 15555555555
If you look at lines #66-80, you can see where the system is changing the caller ID to the trunk's default.