It sounds like the main issue is that once these migrants step onto Canadian soil, they can't be returned to the US.

As such, they should be detained and quickly screened against some simple criteria that could be used to determine potential Refugee status. If the candidate fails the screening, and is simply a economic migrant from Mexico or Central America (as an example) then send them home. Do not "open the door" to lengthy and grossly expensive hearings and appeals.