For any failed DIal, Asterisk will return form Dial with DIALSTATUS and HANGUPCAUSE set. The dialplan can continue from there and do anything that it could do with any live incoming channel.
I suspect the behaviour you are talking about relates to FreePBX, not Asterisk. In particular, I think with the simplest Dialplan, Asterisk on its own would drop the call the moment the Dialplan ended, without answering the call. As a result, it will be in a position to send a SIP rejection on to the caller, and the caller will be generating the fast Busy.
I think the FreePBX dialaplan always answers the call, meaning it is too late to reject it. When the dialplan terminates, it will be seen, by the caller, as a normal completion of a successful call, so will terminate with no tones.