Imprimir un iFrame oculto en IE

Esta solución funciona bien en Firefox 3.0+, pero IE8 / 7 solo imprime toda la página, no el iframe específico.

Esta es la función a la que se llama cuando se hace clic en el enlace de impresión:

var printfunc= function(){
  var url = http://someurl.aspx;
  //This iFrame has style="visibility: hidden; position: absolute; left: -9000px;"
  var printIFrame = GetObj('PrintIFrame');
  printIFrame.src = url;
}

El aspx que se carga en el iframe oculto llama a la función de impresión en el controlador de eventos onload:

<body onload="PrintJS.Print();">

La función de impresión:

 this.Print = function(){
      self.focus();
      self.print();
      return false;
 }

También he intentado esto con "ventana" en lugar de "yo". Ambas soluciones funcionan bien en FF, pero IE no parece tener el alcance correcto. ¿Alguna idea? ¡Una solución de navegador sería genial! Además, prefiero usar estilos de impresión CSS, pero el contenido que estoy imprimiendo es diferente al de la página, de ahí la necesidad de cargar html en un iframe oculto.