I'm not 100% certain why this is, but I have a feeling it is because you are using the CGI version of PHP. When you add the directives to your HTTP.CONF file you are telling Apache any time you see a PHP file, process this file by running it against php/php.exe
I run PHP on Win32 and Linux and despite the fact that $PHP_SELF appends the script handler location all scripts still seem to function properly on both windows and linux.
Hope that helps at least a bit.
Matt