I think this might be the approach I would take with such a complex roof. You could divide them into four parts: the main block running side to side, the two outer wings, and the porch-like projection in the centre.
If you make each a group, you can use Solid Tools to join them together. Then you can just tweak the remaining bits, like the hip that oversails the lower eaves.
The point of this is that you start with very simple elements that are easy to construct and so are unlikely to have errors creeping in such as you encountered.