NSDateFormatter retornar data errada + Swift

Código:

let dateString = "2016-04-02"
    var formatter: NSDateFormatter = NSDateFormatter()
    formatter.timeZone = NSTimeZone(abbreviation: "GMT +3:00")
    formatter.dateFormat = "yyyy-MM-dd"
    println("dateString: \(dateString)")
    formatter.locale =  NSLocale(localeIdentifier: "en_US_POSIX")
    let date = formatter.dateFromString(dateString)
    println("date: \(date)")

    formatter.dateFormat = "yyyy-MM-dd"
    let formattedDateString = formatter.stringFromDate(date!)
    println("formattedDateString: \(formattedDateString)")

Resultado :

dateString: 2016-04-02
date: Optional(2016-04-01 21:00:00 +0000)
formattedDateString: 2016-04-02
2016-04-01 21:00:00 +0000

Estou tentando converter uma seqüência de caracteres para o tipo de dados NSDate, mas não obtendo o valor correto. Eu tentei muitas soluções, mas não está retornando o valor correto. Eu preciso dele no formato aaaa-MM-dd (02/04/2016) mesmo que a minha entrada "02-04-2016". Se alguém puder ajudar, ficaria realmente satisfeito. desde já, obrigado

questionAnswers(4)

yourAnswerToTheQuestion