Just my 2 cents:
Scott was mad at Holly for making them both look bad by flirting at the party so much. He has always been very concerned about his image.
I think Holly and Melanie both recognized and tried to exploit this "weakness" for their own benefits.
Soon after Melanie returned it was very clear that Scott had a greater affinity for her than for Holly.
On the cruise, Holly made a big point of establishing that Tara looked bad for booting Alex after hooking up with him. That served as a subtle warning to Scott that his image would be tarnished if he dumped Holly after hooking up with her. I think everyone's reactions to the Tara-Alex issue made Scott stick with Holly.
Melanie also tried to get Amy to say that Scott was immoral for breaking his original alliance with her. But it didn't work because Amy valued the Holly-Scott hookup over the friendship bond that Scott and Melanie shared.
So Scott is stuck with Holly. Any time he shows signs of straying from her, I suspect Holly will launch an attack on Tara's "immorality," hoping Scott will stay loyal to her in order to protect his own reputation.