If they’re working individual jobs on a freelance, case by case, contract-based model, then they can do whatever they want as far as signing a contract to do work or not signing a contract to do work with whomever they wish.
The reasons might be shitty sometimes, but that’s not enough of a reason to compel all freelancers to do work they don’t want to.