We have a facebook page widget on our template and it caused us countless issues with SSL.
however this is how we got around it!
C#/VB.NET Code:
<script type="text/javascript">
if ("http:" == document.location.protocol) {
document.write("<iframe src=\"http://www.facebook.com/plugins/likebox.php?id=80315693230&width=190&connections=3&stream=false&header=false&height=189\" scrolling=\"no\" frameborder=\"0\" style=\"border:none; overflow:hidden; width:190px; height:189px;\" allowTransparency=\"true\"><" + "/iframe>");
} else {
document.write("<iframe src=\"https://www.facebook.com/plugins/likebox.php?id=80315693230&width=190&connections=3&stream=false&header=false&height=189\" scrolling=\"no\" frameborder=\"0\" style=\"border:none; overflow:hidden; width:190px; height:189px;\" allowTransparency=\"true\"><" + "/iframe>");
}
</script>
very simple, yet I spent ages trying to get it to work, I might just be a bit slow.
I guess a key part to take note is the URL is the same just https:// over http://. If you have the like button dynamically coded into your pages, you could just change the http part inside the XML file surely?
Anyway hope this helps.