Probleminha com callback XmlHttpRequest (AJAX)

Hey galera,

Estou desenvolvendo um pequeno framework Javascript para dar uma incrementada nos sistemas que faço no serviço.
Estou fazendo agora a parte de Ajax asincrona.

Desenvolvi a seguinte função:

asyncGet: function(args){
		var callback = args[0];
		var params = args[1];
		var finalUrl = [this.url,"?",(params == null ? "" : (this.parseParams(params) + "&")),"_ts=",System.currentTime()].join("");
		
		var THIS = this;
		
		if(callback != null)
			this.request.onreadystatechange = function(e){			
				THIS.doCallback(callback);
			};
		
		try{
			this.request.open("GET", finalUrl, this.async);			
			this.request.send(null);			
		}catch(e){			
			throw new Exception(e.toString().indexOf("restricted") != -1 ? "Access to restricted URI denied." : e.toString(),this);
		}
		
        return true;
	}

A função realiza a requisição corretamente porem o callback não esta sendo chamado na hora correta, ele esta sendo chamado logo apos a chamada do metodo Open e apenas uma vez.

Alguem tem idea do que pode estar de errado ai?