You have no recourse on this. As abutterfinger25 pointed out, they are only responsible for getting you to the cities you booked with them. The reason you have no recourse is because their contract of carriage will have a clause stating that they can reroute the aircraft.
While it is true that they will end up saving some money doing this, that is not the only motivation. You have to remember that while you are only concerned with your own flights, the airline has to be concerned with the big picture. those other passengers would have been quite well delayed had they not be moved to your flight. The probably would have had to stay the night. What kind of inconvenience is that to them? Were there any hotel rooms available? Yes, it's true that you got the short end of the stick, but had they not, some other passenger would have had similar or the same. It's not unusual for people to fly to Miami, and connect to other airlines, they they purchased a separate ticket on, just like you did, only they are normally going international.
Here's the other things to consider. If they had to divert the aircraft from JFK to say Newark, or La Guardia, then all they have to do then is provide bus transportation. What if that would have happened? The other thing that stands out to me is that given the times you listed, this means you would have arrived in JFK at 9pm. Unless you are traveling to Europe, there aren't too many flights much later than that. How much time did you allow between flights?
|