Firefox 3.1 beta 1 で display: none な iframe 内の canvas 2d context の font プロパティに代入するとエラーが出る

<!DOCTYPE html>
<meta charset=utf-8>
<title>Firefox 3.1 beta 1 で display: none な iframe 内の canvas 2d context の font プロパティに代入するとエラーが出る</title>
<script type="text/javascript">
window.addEventListener('load', function() {
	var iframe = document.createElement('iframe');
	iframe.setAttribute('width', 640);
	iframe.setAttribute('height', 480);
	iframe.style.border = 'none';
	iframe.style.display = 'none';
	document.body.appendChild(iframe);
	
	var win = iframe.contentWindow;
	var doc = win.document;
	doc.write('<body></body>');
	doc.close();
	doc.body.style.margin = '0';
	doc.documentElement.style.overflow = 'hidden';

	var canvas = doc.createElement('canvas');
	canvas.width = 640;
	canvas.height = 480;
	canvas.getContext('2d').font = '18px monospace';
	doc.body.appendChild(canvas);
}, false);
</script>
<h1>Firefox 3.1 beta 1 で display: none な iframe 内の canvas 2d context の font プロパティに代入するとエラーが出る</h1>
</html>
</html>
エラー: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMCanvasRenderingContext2D.font]"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: http://www.fujidig.com/misc/js/canvas/iframe-canvas-font.html :: anonymous :: line 23"  data: no]
ソースファイル: http://www.fujidig.com/misc/js/canvas/iframe-canvas-font.html
行: 23

なんで?