In theory, a buyer can pay their closing costs in USD. However, the notario has to pay all of the fees involved and the acquisition tax in Mexican Pesos (MXN), so they are going to have to exchange your dollars for pesos. And they generally use a fairly unfavorable dollar to peso exchange rate, hedging against a sudden and substantial change in the rate.
Therefore, it is almost always in the buyer's favor to pay all of the closing costs in pesos. On the day of closing, the escrow company will exchange your CAD or USD for the amount of pesos (MXN) necessary to cover the closing costs and according to the exchange rate of the day.