Try adding ++ to the beginning of your command name and if necessary also add VC.Pause where needed.
The wait action has never been 100% reliable. I mostly blame .Net's implementation of the webbrowser control for that. I struggled with it endlessly. Maybe I'm just stoopid but I could never quite make it right. Part of the problem is that a web page often involves loading many different things and each of them can trigger the "finished loading" event which the wait action is watching for.
Another option for you is to watch for the events triggered by the page loading and use them to trigger another command.