When you play with the key, does it click, and try to engage, or does it just start perfectly when you get it to work? You are either getting a connection to work in the switch, or the solonoid is almost shot. Usually when the starter goes either the pinion throwout or the rotational motors wont function. It will engage, but wont turn, or it will turn but not engage. If the engine compartment mounted solonoid is bad, it should be evident because you wont hear it click.
Try this, when it doesn't want to start, turn on the fan blower motor. If it doesnt turn off when you go to the start position, It's the ignition switch.
p.s. Starters can draw up to 800 amps on cold winter mornings if it's availible. You might also make sure all the wires are good and snug. Bad connections can make it behave just as a failed part would.