I've added this to my web.config (IIS did it for me actually):
<system.webServer>
<staticContent>
<mimeMap fileExtension=".xpi" mimeType="application/x-xpinstall" />
</staticContent>
</system.webServer>
But I still just get a standard file download box. What else is there that I'm missing?