Just for clarity, windows 95/98 does indeed support pre-emptive multitasking. However, it only uses the scheduler to make context switches if the running program supports pre-emptive multitasking as well. So, windows 9x is more of a pre-emptive/cooperative hybrid.
My understanding is that this is for backward compatibility issues, but I may well be wrong, it has been years since I've bothered looking at any of this stuff.
I do know that in my years as a windows systems coder under 95-2000, never once did I have to directly initiate a context switch.