Um, shouldn't you verify when you make your reservation that you booked it correctly not 4 days before your trip.
Online travel companies are at the mercy of the airlines when things like this happen. It is VERY common for people to make mistakes and not realize it because they never really closely checked all the details. Bookit packages, just like the other ones, automatically default to the lowest priced options which, unfortunately, many times are flights that include an overnight layover like the 12 hour one you mentioned.
Booking through online companies like Bookit, Expedia, Travelocity, etc. are great as you can save a great deal of money compared to booking directly with an airline, hotel, actual travel agent, etc. however when you book it yourself online, you are basically acting as your own travel agent.
The best option when you are making a reservation ESPECIALLY with flights is to research online, then once you are ready to book, call the online travel company and book over the phone. Then when you speak to a sales agent, they are the ones who take on the responsibility of booking what you want and going over the details with you...details that many people miss.
Another side note for folks who book flights...online travel agencies do NOT have real-time data as the airlines do not provide real-time info. Flight prices & info are "cached" for a certain length of time but by the time you are ready to book, the airline may have made changes to availability, prices, etc. that had not yet been updated through the program the online travel companies get their information from. If something changes, the site will tell you before it charges you. When airfare is booked, the info is immediately sent to the airline and if the information & price has been changed by the airline, it will bounce back and let you know it has changed.
Another thing to remember. Airlines often make changes to their flights after people have made and paid for a reservation. You cannot fault the online travel agency for changes made by an airline. Many times the online travel company is not made aware of the changes made by the airline. It is up to the customer to verify with the airline that nothing has changed since you made the reservation.
It is an unfortunate reality of the travel industry. Airlines make a lot of flight changes due to a number of circumstances. Sometimes their is a problem with an aircraft causing a delay or cancellation of a flight in one city and that will likely trickle down to other flights as that airplane that is having problems will be used for other flights too, not just the one flight. Weather delays do the same things. It is a trickle down effect. A problem for one airplane, airline, airport, or whatever can effect thousands of people at a lot of different airports. Nothing they can do about that. Until humans become perfect, that is the reality.