Sure, the Mets could have played tonight. They called it early. It's pretty obvious why they did it. Nolasco was on the mound tonight. Davis and Wright are banged up. They hadn't thrown in the towel on the season yet. Philly is going to get the division, so if they're going to be going after anything this year, it will be the wildcard. So who are they going to have to chase down? It's looking like the Marlins. So let's screw them.
There is a mutual off day on July 18th. It's during a homestand where the Mets have a day off between series, so they don't have to travel... but why not make things a little difficult to wear down the team they're chasing? On July 17th, the Marlins are finishing up a road trip in Chicago and were set to have a day off before heading back to Miami. Not so fast. Play game at Wrigley. Hop a flight to New York. Play the Mets. Get back on plane and fly home to play again. Three cities in three days. Yes, it's right after the all-star break, but why not make things a little harder for the Fish?
So screw the Marlins.