It sounds nice in practice but there are desperate people out there. A strike provides those people with opportunities. Prisoner's dillema keeps them from sacrificing themselves for a union that sees them as the out-group.
one could argue that those people, in the end would be better off by actually joining the union and demanding better rights.
There is a reason socialism is inherently internationalist. Capitalistic society is not bound by national borders, and thus the exploitation of labour is a class issue that tranceeds national boundaries. Workers in different places are far more similar then people from different class in the same place.
Are we talking about unions or socialism? I don't see unionism as an inherently anti-capitalist construct. It's a contract amongst workers and business owners. As with all contracts, their value tends to be dependent on your individual situation. It's even possible for unions to be anti-socialist, by constraining access to a select few creating elevated wages for the in-group while shielding access to that value from the out-group.
What's specifically protected in BC is that you cannot get fired if (a) you're in a union, and (b) you cannot get to work without crossing a picket line.