joem124 - Thank you for posting your review.
A couple things may help make your next cruise (and I hope you do cruise again) more successful...
PCL balcony cabins are different than others we have been in. The biggest issue we started to notice was that many of the older ships did not include a sofa/loveseat in balcony cabins. That is what got us started comparing cabin size and amenities across cruise lines as part of our selection and booking process. On PCL's older ships, if you want more room and a sofa/loveseat, you pretty much have to book a mini suite. We do see that ships like the Regal Princess have better in-cabin seating but it is important to critically evaluate the cabin before booking.
The cruise line does not pick where they dock unless they have a really sweet deal with the port. Generally, port schedules are set in advance but unfortunately that doesn't automatically mean ships get the berth that is the most passenger-friendly.
Ports get changed for a variety of reasons. It is disappointing for sure. Substitutions are not easily arranged (due to advanced port schedule). As much as we book based on itinerary, we always keep in mind that any given port could be cancelled and don't let it knot our panties if/when it happens. It sounds like you had your share of port changes... one is disappointing but two changes is a real blow.
I hope your next cruise sails smoothly.