The fundamental problem seems to be that they have allowed themselves to fall into the trap of thinking that all the work to be included in release X takes place after release X-1 (even the most extreme folks seem to be saying after the feature freeze of release X-1)
That is very much not the case. They need to learn from Linus and the Linux Kernel
Each kernel cycle doesn't start with development, it starts with a "merge window" when development that is considered ready to go is submitted to be included.
some of the work that is submitted during the merge window was developed since the last merge window, but a lot of it (especially major features) has been in development for several development cycles.
As a result, there are fewer 'oops, I missed that' bugs, and the attention can be concentrated on finding more subtle bugs and integration problems. Linus has been getting quite vocal over the last several release cycles when see sees brand new code submitted in the merge window.