Weak ignition switch wouldn't cause it. The ign just activates a mechanical switch (solenoid) which has a large contact in it. It either makes contact, or it doesn't. If the voltage going to the solenoid is weak, it would just kick the starter out. It wouldn't cause a slow crank.
Now, bad contacts in the solenoid could.... but not likely. The solenoid would get really hot and most likely just burn up.