I should do a two-part filter that allows for accumulating shadow lengths and then generating the shadows at the end like the lighting filter does. It would eliminate the doubled shadows.

Now if there was just some way to get the roofs to render height information then the shadows could have the right profile...