I may be out of date here, but without specifically configuring it, Outbound Trunks in FreePBX will strip out the CallerID Name. This was years ago because there are some carriers (various PRI carriers is what caused this years ago) that would completely reject the call if a CNAM was sent to them. This was deemed a reasonable thing to do since, as @mulderir pointed out, most carriers derive the CNAM at the receiving end of the call out of a Database the subscribe to, they do not get it from the originator.
So having agreed with @mulderir on this comment, there's more history here to be had. When we made the above mentioned change years ago, to remove the CNAM, we subsequently received bug tickets from various Canadian customers. They told us that in Canada, at least in some cases, the CNAM transmitted to the telco was propagated to the far end vs. dipping out of a database. @lgaetz seems to have confirmed this in his testing. As such, at that time, we added a setting (it may have been an Advanced Setting, or it may be right in the Trunk page, I don't recall right now and don't have a GUI up in front of me to confirm) that would return the CNAM transmission out to trunks. It is off by default so you have to enable it to get that behavior.
So ... I hope this information helps in any testing that is being done, or observations that seem to be conflicting between the more common CNAM delivered from databases, which is the case in the US and I believe most of the rest of the world, and the cases where it is being transmitted to the far end user. I would also venture to guess that you may find localized instances of this latter behavior on some carriers when a call is 'in-net' within their same network and they choose to never transmit the call out to the PSTN and then back to them, thus possibly propagating the received CNAM.