Mechanism for reaction between hydrochloric acid and magnesium
Based on the three step mechanism you have provided, what if the slow step is your step 3 which is H + H --&gt; H2  so rate law is now k3[H]^2. Since H is an intermediate, you can substitute for this intermediate from earlier steps and you will end up with
Rate = (k3.k1.k2.[Mg][H+]^2)/[Mg2+]   and if [Mg]/[Mg2+] is constant as the reaction of a solid always happens at the surface, you can get a rate law = k [HCl]^2