Manchester City's Erling Haaland missed a chance from less than three yards out in their win over Southampton at the Etihad.