Bug do IE9 com aumento no tamanho da fonte do conteúdo css

Encontrei um bug no IE9, mas pesquisar no Google ainda não ajudou a encontrar nenhuma solução.

O seguinte funciona bem no FF 3 + 4, Chrome, Opera e até no IE8, mas não no IE

O HTML:

<div class="outer">
    <p class="inner">Lorem ipsum dolor</p>
</div>

The CSS:

div p {
    font-size: 1.2em;
}
div p:after {
    content: " sit amet";
}

div p:after {
    font-size: 1.3em;
}
div.outer p:after,
div p.inner:after {
    font-size: 3em;
}

O "sit amet" éenorm no IE9, pois parece multiplicar o tamanho da fonte repetidamente. Não é possível substituí-lo por "! Important" ou outros meios de aumentar a especificidade (como, por exemplo, o "div.outer" já deve fazê-lo). Parece até que recebe multiplicado dentro da mesma declaração, ou seja,div.outer p:after, div p.inner:after não se multiplica por 3, mas por 9!

(Observe que as classes "interna" e "externa" não são necessárias aqui. O mesmo acontece ao declarardiv p {} de novo e de novo. Mas isso só faz sentido com as classes como um exemplo do mundo real.)

Aqui está uma página de teste:http: //dl.dropbox.com/u/4667354/temp/ie9-bug.htm

Existe alguma solução?

Editar

Para esclarecer dois mal-entendidos:

O bug é o comportamento usual de que os elementos filhos multiplicam o tamanho da fonte de seu pai quandoem são usados. O erro é que os tamanhos das fontes no conteúdo gerado não podem ser substituídos e se multiplicará de qualquer maneira ao tentar. I.e. definindo o tamanho da fonte emdiv p:after funciona uma vez, mas definir novamente multiplica em vez de substituí-lo. Para ver melhor qual é o problema (caso você não tenha o IE9 em mãos), aqui estão duas capturas de tela da página de teste: no IE8 e em qualquer outro navegador moderno ein IE9.

questionAnswers(5)

yourAnswerToTheQuestion