Creación de un iframe con HTML dado dinámicamente

Estoy tratando de crear un iframe desde JavaScript y llenarlo con HTML arbitrario, así:

var html = '<body>Foo</body>';
var iframe = document.createElement('iframe');
iframe.src = 'data:text/html;charset=utf-8,' + encodeURI(html);

Yo esperaríaiframe&nbsp;para luego contener una ventana y un documento válidos. Sin embargo, este no es el caso:

> console.log (iframe.contentWindow);
nulo

Pruébalo por ti mismo:http://jsfiddle.net/TrevorBurnham/9k9Pe/

¿Qué estoy pasando por alto?