I think the fact that they can get unpaid work, means they don't need to pay for it. Why pay for 10 people when you can get 5 to do it? No matter how little you pay for labor, free (i.e. unpaid overtime) is cheaper.
Which is why, in this case, unionization isn't just (to paraphrase) ignoring that there's not enough demand.
One intended result is that it would forcibly remove the option of externalizing the consequences of intentionally under-utilizing the labor pool. It prevents bad behavior (behavior that should already be illegal IMO). Freely exploiting your workers because they have no bargaining power should always discouraged.
While I certainly agree, the historical record suggests that unionization often requires a certain amount of labor scarcity in order to happen in the first place. Of course, enough scarcity and the workers won't see the need, perhaps because there isn't any, but in cases of superabundance of labor it is extraordinarily difficult (usually impossible) to successfully unionize.
I certainly agree that unions can make a big difference in the intermediate case.
You might be right here. In an ideal world, limitations on unpaid overtime would already protect these workers, and then there would be little or no perceived benefit for the unions they are talking about.