It seemed to be working from my tests. Can you post more specific details? It might help to include a factory file and show the exact lines in the gcode file you think are wrong, and what you expected them to be.
In the attached factory files, the one with a single pair never turns on the cooling fan and the layers are very fast, maybe 3 to 5 seconds each, and ironically, the factory file with four pairs of parts puts the cooling fan on 50% (after the first 10 layers are complete) and the layers are still well above 20 seconds each.
I think the reason the fan never comes on for the single pair, is because the m106 command is inserted prior to the call to the start_print macro in my scripts. I think S3D should place an initial call to the cooling fan (for auto cooling) after all initial user starting scripts, not before.
Typically, if you want to set the fan speed manually in the starting script or control exactly where that command is placed, then you would use the [fan_speed_pwm] placeholder variable. That stops the software from adding its own commands afterwards.