Well, they have good enough squad but Di Canio seems clueless about the new team that he has. New players like Giaccherini, Altidore, Borini, Graham are good enough for them and don't forget about the old faces like Larsson, Gardner, Fletcher, Johnson, Wickham etc etc. And maybe the reason why Sunderland are on the bottom of the league is they lost Mignolet. A really good keeper for a team like Sunderland. Now they don't have a proper keeper to swim through the middle of the league.
About the replacement, I'm not sure who will replace Di Canio. It could be Pulis or anyone.