As a Canadian who will be going to work in the US through a TN Visa. I wonder if Canadian hires are also seen as a "cheaper" alternative to hiring locally.
No visa class requires you to be paid under market (some even require that you are paid a wage comparable to an american)
If an employer is trying to "maximize profits" through non-american workers, they will do it regardless of what status you hold.
If an employer is simply trying to find the somebody to "do the job" regardless of status or citizenship then it is unlikely you will experience any difference in treatment.
On a personal note, I had been on a TN for 2.5 years and was paid at (or slightly above) market rate for the entirety of the time.
At no time did my employer seek to use my TN as a way of leveraging down my pay. We hired quite a few americans as well (half a dozen or so, it was a small company).
If we could have found more qualified candidates, we probably would have hired more (american or not, we scoured github for candidates as this tended to provide the best candidates. since github user profiles generally do not provide citizenship information, we had to be open to hiring local or possibly non local if we found somebody who looked promising).