you are transferring from H1 to H4, there is no premium processing for H4 visa, so applying in US to transfer/approval from h1 to H4 can take a month or can take 6 months or more. Getting it Stamped is easier and faster but it has its own complications, looked at the Canada option and Canada for sure will require you to have visa to enter the country, that's additional processing and financial burden for visitor visa.. then on top of that the H4 visa can take 4-5 days to get stamped and get the passport back.. India atleast you can visit and get the visa stamping / vacation without headache of being stuck in for 4-5 days in mexico or Canada. You do have time to get h4 visa but then getting the EAD is another process, first you need the h4 visa approval then you can get EAD (you can apply COS in US but again H4 needs to be approved first which is matter of luck). Average time now days to get EAD is around 50 - 60 days if you apply for EAD independently. all the best.. also there could be other senior members who can better guide you.. so hope this answers atleast part of your query..