It sounds like it was well past 0300 by the time they'd posted the new tentative departure time of 0800, so arranging hotels for ~300 pax within that time frame just wasn't feasible. The subsequent delay to 1240 is unfortunate, but that's the inherent uncertainty with rolling maintenance delays. I'm just a bit surprised Operations couldn't swap it to another aircraft to minimise the delay.
By all means, share your feelings with CX, but I don't think you can expect much more than some apology miles.