NSDateFormatter devuelve fecha incorrecta + 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)")

Salida:

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

Estoy tratando de convertir una cadena al tipo de datos NSDate pero no obtengo el valor correcto. He intentado muchas soluciones pero no devuelve el valor correcto. Lo necesito en formato aaaa-MM-dd (2016-04-02) igual que mi entrada "2016-04-02". Si alguien puede ayudar sería realmente apreciado. Gracias por adelantado

Respuestas a la pregunta(4)

Su respuesta a la pregunta