The difference in material is decisive, but black has positional advantage. No two ways about it, it's crucial to bring more units to the field.
15... Qh8e8
The c6 pawn is annoying, but not an urgent threat. Perhaps bringing the remaining rook to play would've better. Now the black knight is tied down to protect h7.
16. Bc1g5
erodes the defense of h7, builds the material advantage by going for exchanges, and prepares the way for the white rooks to come to play.
16... Kf7g6
? exposes the black king too much and permits a tempo move through the check at h6.
17. Qh3h6 Kg6f7 18. Qh6xf6 Kf7g8 19. O-O-O
not really a bad move but perhaps overkill. A direct Bh6 would suffice, winning at least the e6 pawn through mate threats.
19... Qe8xc6
at last the c6 pawn falls.
20. Qf6xe6 Kg8f8
Kg7 would've allowed delaying the inevitable by two moves.