I agree with moondog about the highspeed train service between Beijing and Shanghai. It is more reliable.
As for my trip, China Eastern cancelled their morning flight and shuffled me to the late afternoon flight which didn't work because of my meeting in the afternoon.
Ctrip then scheduled me on China Southern in the morning but today just got a phone call from ctrip telling me that now they have cancelled.
I ended up booking my flight for the day early. As previous more experienced China travellers have mentioned, they like to fly in a day early just in case a snafu happens.
ctrip is very accomodating on domestic flights and they will find a way to book you on a flight that fits your schedule if possible.