I would like to understand the logic behind this.
All audio is digital. If Core Audio firewire driver is used, there should even be no big difference between built-in sound and external one.
I think it's the difference between fixed and floating point numbers. Applications decoding movies, MP3s, etc., use floating point, so the sound can be processed and scaled without affecting the number of steps available. The sum of all the audio playing is converted to the current output format. Digital output from the computer is fixed point, either 16 or 24 bits. If volume control was used on this, it would reduce the number of steps, thus causing audio distortion, or reduced signal to noise ratio. Any amplifier using the fixed point digital signal will have a volume control on the analog signal after conversion, so it won't affect the audio quality.