DNN should normally work with or without HTTPS and shoudlnto cause a 500.
Actually the way you do the redirect is the way we do this too, but you need tomake sure you have no setting for HTTPS in DNN (like per page).
It doesn't really have anything to do with DNN as IIS is handling the redirect.
If the site works with and without https (without the rewrite rule) and you get an error with the rewite rule, I'm quite sure it's the rule that has an error in it. I have also seen a 500 when IIS didn't have Url Rewriter installed, but that does not seem to be your issue.