Basically, the hdd activity is converted to about 3 volts by either 1 or 2 transistors! Transistors generally have a low switching thresh-hold so a high value resistor is used! The difference between on and off can be less that .1 of a volt depending on the switching thresh-hold of the transistor used.
This means that a high value resistor that is faulty or has gone out of spec can cause the problem you describe!
You say it works properly when you start your pc, as resistors warm up their resistance drops and it could be 1 resistor dropping too far which will increase the voltage to the transistor keeping it in the on position!
I hope that all makes sense, it's been quite a while since i did any work with transistors!!!!