Data inválida para uma nova data ("AAAA-MM-DDThh: mm: ss"); instanciação

Estou trabalhando com titânio, que é uma estrutura para desenvolvimento móvel baseado em javascript.

Eu tenho uma matriz que contém entre suas células uma string que representa uma string 'date and time' no formato 'AAAA-MM-DD HH: mm: ss' (NightsArray [i] [3] retorna: 2014-02-20 23:00:00), como mostrado no console posteriormente.

nesta página são mostrados vários construtores para o objeto Date () com vários parâmetros:

var today = new Date();
var birthday = new Date("December 17, 1995 03:24:00");
var birthday = new Date("1995-12-17T03:24:00");
var birthday = new Date(1995,11,17);
var birthday = new Date(1995,11,17,3,24,0);

Então, como você pode ver, o construtor mais próximo da string da minha matriz é o 3º:

var birthday = new Date("1995-12-17T03:24:00");

No código a seguir, tentarei formatar minha string no formulário "AAAA-MM-DDThh: mm: ss" com alguns métodos substr () e passará a string resultante (após uma concatenação) para o construtor Date (), mas obtive 'Data inválida', como mostrado no log do console.

        Ti.API.error("+*///+++NIGHT DATE & TIME(string) : "+NightsArray[i][3]);
        Ti.API.error("+*///+++NIGHT DATE & TIME(string)substr(0,10) : "+NightsArray[i][3].substr(0,10));
        Ti.API.error("+*///+++NIGHT DATE & TIME(string)substr(11,10) : "+NightsArray[i][3].substr(11,10));

        Ti.API.error("+*///+++"+NightsArray[i][3].substr(0,10)+"T"+NightsArray[i][3].substr(11,10));

        var nightDateNTime =  new Date(NightsArray[i][3].substr(0,10)+"T"+NightsArray[i][3].substr(11,10));
        Ti.API.error("+*///+++ CURRENT DATE nightDateNTime(Date): "+nightDateNTime);
        var d = new Date();
        Ti.API.error("+*///+++ CURRENT DATE : "+d);

Este é o log do console:

[ERROR] :+*///+++NIGHT DATE & TIME(string) : 2014-02-19 23:00:00
[ERROR] :  +*///+++NIGHT DATE & TIME(string)substr(0,10) : 2014-02-19
[ERROR] :  +*///+++NIGHT DATE & TIME(string)substr(11,10) : 23:00:00
[ERROR] :  +*///+++2014-02-19T23:00:00
[ERROR] :  +*///+++ CURRENT DATE nightDateNTime(Date): Invalid Date
[ERROR] :  +*///+++ CURRENT DATE : Mon Feb 17 2014 11:09:09 GMT+0100 (CET)

Eu tenho que comparar essa string para a data atual no final, mas agora eu primeiro tenho que converter essa string em uma data, mas gostaria de saber por que isso não funciona ..