Yeah, the runtime component is an ExcelDNA addin. The IDE component is a VSTO addin. Since VSTO doesn't allow defining custom functions I switched to using ExcelDNA for the runtime.
I've built an Excel-DNA based Add-in (https://www.excelpricefeed.com/) and distribute it via an installer built using Advanced Installer. It works well, the only real pain point is the the user has to find out which version of Excel they have installed in order to choose the correct download (32 or 64 bit).