Sounds like you've got a handle on this, but i just wanted to mention that it's been my experience that when the fan only works on high, that the resistor is bad. Any other combination of speeds not working is almost always the switch.
Take care,
~Chris