Of stacks and faces

I have recently been considering the issues involved in using fonts of varying x-heights in my font stacks. As Andy Clarke explains:
...there’s the problem with CSS, right there. Different typefaces, even common ones, that have been designed with different x-heights, need different amounts of line-height. Calibri less than Verdana and different again to Arial or Helvetica. But CSS does not provide the facility to specify a varying line-height if a font in the stack is not installed, as it retains the same set line-height value for all typefaces specified in the font-stack.
One possible way of addressing this issue is to detect which fonts a user has installed via font detection scripts like this or this. Using this method a script could automatically adjust the font size at runtime to ensure a consistent layout. However, a lot of people worked really hard to ensure the content, presentation and behaviour of our websites remain seperate and we don't want to be pissing on their parade. The answer to this problem potentially lies in the newly adopted @font-face declaration in CSS3. The @font-face declaration to those unfamiliar allows designers to reference a font for embedding inside a page. The syntax looks like this:
@font-face {
  font-family: <a-remote-font-name>;
  src: <source> [,<source>]*;
  [font-weight: <weight>];
  [font-style: <style>];
}
The syntax currently has support specifying a font's weight and style, this is because they act as constraints on the actual embedding and therefore reduce how much of the font needs to be downloaded. What I would like to see is the addition of the font-size property so that designers would have a greater degree of control over their typography. Below is how you would potentially normalise the x-heights of your font stack using @font-face:
@font-face {
  font-family: L-Calibri;
  src: local(Calibri);
  font-size: 115%;
}
@font-face {
  font-family: S-Verdana;
  src: local(Verdana);
  font-size: 85%;
}
body {
  font-family: L-Calibri, S-Verdana, Arial, sans-serif;
}
I'd be quite keen to hear other people's thoughts on this, and to see if anyone else has any ideas on how to move typography forward on the web.