I'm not Canadian but I'll tackle this question. Unless someone lives in the riding (and ridings can be a VERY small number of voters) of the leader of the Conservative or Liberal party, they can't directly vote for that individual - or for the leader of any of the several other smaller parties (again, unless they live in the riding of that leader). Those two parties (Liberal and Conservative) are currently far and away the biggest of the parties such that, from one of the two, is where their PM will very likely come - because one of those two parties will win based on the number of ridings they won. So, in essence, it's a bit like the 2 big U.S. parties and the ridings function like our electoral college in that the popular vote doesn't necessarily determine the winner. I know in the last two elections, the Conservative party won the highest percentage of the popular vote but the Liberal party (of which Trudeau is the leader) won the number of ridings. MDP is the next most popular party and further left than the bigger Liberal party.
So, effectively, those who actually wanted to prevent Trudeau from being PM would have placed their vote for the Conservative party. A Conservative party win (by ridings) would have resulted in a Scheer PM (two elections ago) or an O'Toole PM (last year). But in the case of a liberal Canadian, a vote for the Conservative party would be somewhat like a Dem voting for Trump - an unlikely vote for a liberal. So, a liberal Canadian typically votes for the Liberal or MDP - and then says they can't stand Trudeau - whom they effectively put in office