There really isn't much else the ship can do as far as scheduling formal night. It has to be on the night in Nassau. Formal nights are not done on the first and last nights because of luggage related issues. The second night you are leaving Coco Cay and people don't want to rush around getting dressed up after a day on a beach, and then have to rise early the next morning for the arrival in Nassau at 7am.
The question you need to ask yourself is would you really prefer to be running around Nassau all day and night, or would you like to enjoy the ship? If the answer is the former, then you may as well find someplace to eat dinner ashore. Of course there is nothing to prevent you from going back out on the town after dinner is over. You'd still have 3 or 4 hours. Most passengers will be Nassau'd out by the afternoon and will probably return to the ship for dinner and stay aboard.
I personally plan to maximize my ship time when I am in Nassau next month.