When I first got my car, I though the ignition switch was not working properly too.
The engine is supposed to start when the driver turn the key and let go "immediately". But I found out most of the time "immediately" will prevent you to start the engine. I think the car's computer needs "time" to recognize the code on the smart key. So what I do now is to hold the key just long enough to have the initial crank and let go. The computer will take over to virtually hold the key for you.
Here in New England where the temperature can often fall below zero, my 99 E430 will crank itself 2-3 seconds after I let go the key.
So I wouldn't worry about your problem unless you try to crank it and stall.
99 E430 Sport