Actually, I did end up getting it to work. The rules I ended up using although expressed differently are pretty much the same as the ones in my previous email. I think I might have made a mistake testing the configuration and it was probably working the entire time.
These are the "final" rules I used: rdr pass on $ext_if proto tcp from any to ($ext_if) port 443 -> <webservers> round-robin nat on $ext_if proto tcp from any to <webservers> -> ($ext_if) It works quite nicely. I'm using it with a Nagios event handler that adds and removes hosts from the <webservers> table when the http service fails or comes back up.