There are two issues with fake blocks:
1) Calendar has fake blocks, but doesn't even use the print_sideblock function which is supposed to ensure consistent display.
2) print_sideblock does not ensure consistent display. Real blocks always have <h2><div class="title"> around the heading text. print_sideblock relies on users to pass this in, however all uses (except by the 'real' blocks) do not. [This is also a minor accessibility issue, since headings should be marked as headings.]
My solution for 2.0 is:
1) Change calendar to use print_sideblock
2) Change print_sideblock so that if you pass it plaintext (something without a div tag) for $heading then it automatically adds the HTML above around the $heading. However, if you pass complex HTML (as is sometimes required, for example when a genuine block displays its control icons or already has the above styling) the behaviour is unchanged.
3) Make minor changes to some themes so the calendar styling isn't broken after this change