The installed system scripts work that way because there are scripts in rc.local and rc.M stating to check the specific system scripts for executable rights prior to launching them. People cannot just drop executable scripts into the folder and expect them to work, they must first add the correct initialization scripts to the correct files. I consider this a better method than what is used by distros that use the SystemV init method in which any executable script that is placed into a runlevel folder is executed without any further modifications.
At least with Fedora/RH-based Linux, system initscripts will not be run by the system unless the proper symlinks have been generated for them for the specific runlevels in which they are supposed to run. These runlevels are defined at the top of each initscript ( e.g., "# chkconfig: - 85 15" ). So you can drop an executable script in /etc/init.d/ but it won't run until you:
a) put the proper "chkconfig" entry at the top of the script
b) run a command to create the symlinks, e.g. "chkconfig --add myService" , or create them manually