I, actually, do not have a problem with a non-compete clause by cruise lines for a vendor. It is the vendor's business decision on whether to sign the agreement or not.
Here is what can happen (my personal experience) if there is no non-compete clause. Morocco port, Windstar cruise - probably the one and only time I will ever get to visit. Did a lot of research, found a highly rated tour guide and booked him in September for our April cruise. Had another couple (from Australia) who were going to join us. Verified the booking was OK about two weeks prior to cruise.
Got off the ship and found the guide with our name on a sign. It was someone different! Was told that our tour guide was requested by Windstar at the last minute and would be doing one of their bus tours. OK - we are go with the flow people, disappointed but did not make a fuss. Morning part of the tour was great - started to fall apart at lunch. He tried to charge us extra for lunch, fortunately we had the emails that clearly stated lunch was included. Then he began parading us through various stores and vendors - again we showed him the emails where we had stated we did not want any shopping. At this point he became angry, threatened to just leave us until we pointed out that our backpacks were in his van. When we asked about the three other places we were supposed to visit, he told us the tour was over.
Upon our return home, I emailed the guide we were supposed to be with. It was only then that I found out he had a contract with Windstar and did all their tours! He knew in advance when he took our booking that he would not be our guide since he knew we were on Windstar, but led us to believe he would be conducting our tour. This was extremely deceptive and had I known I might have taken the tour offered by Windstar. We received no refund, only a promise that should we ever come to Morocco again, he would give us a free tour.
So, this is the flip-side story of what can happen if a vendor does not have a non-compete agreement with Windstar. I would have been just fine with him saying he could not accept our booking - I would have then tried to find someone else or just do the tour through Windstar.