Swallows FC snatch late win over relegation-doomed Maritzburg United