I like your approach, especially for specifically testing interoperability with Internet Explorer. For a simpler, pure Perl system, you might want to investigate
HTTP::Recorder which sits as an HTTP proxy between your browser and your server and records HTTP requests for
WWW::Mechanize to run automatically. (Disclaimer: I haven't used this module and it suffers from sparse documentation at the moment).