Philip,
That's correct. An SSL certificate is tied to a domain name. Most shared SSL certificates get around this by re-naming your site, so instead of going to 'domain.com', you have to go to 'domain.sharedssldomain.com'. This routes your site through the domain (sharedssldomain) that the certificate is valid for, but doesn't present your real site's domain to the user.
Facebook requires that your real domain be used, to prevent forgeries and misleading your users. So if your shared SSL certificate requires you to use a different domain name than the Site and Canvas URL set up in your Facebook Application, the browser will throw warnings/errors because of the different domain names. For more information on Hostgator's shared SSL, see:
support.hostgator.com/articles/ssl-certi...ave-browser-warnings
We definitely agree that a dedicated SSL certificate is worth the trouble and cost, and that shared ones can cause issues depending on the configuration.
Hope that helps explain the cause, and thanks for your feedback,
Alex