I'd still start with XAMPP (or LAMPP) because that gets you 90% of the way there.
Then just add the components you need that weren't on the default configuration. I used to set up servers by hand and it usually takes a ton of effort to get everything going. I'll never do it from scratch again unless I really have to.
The current version of XAMPP for Windows has Apache with IPv6, OpenSSL, MySQL and PBXT, PHP5, phpMyAdmin, Perl, FileZilla, and Mercury mail.
LAMPP (the Linux equivalent) has even more of what you're looking for built in:
Apache 2.2.14, MySQL 5.1.41, PHP 5.3.1 & PEAR + SQLite 2.8.17/3.6.16 + multibyte (mbstring) support, Perl 5.10.1, ProFTPD 1.3.2c, phpMyAdmin 3.2.4, OpenSSL 0.9.8l, GD 2.0.1, Freetype2 2.1.7, libjpeg 6b, libpng 1.2.12, gdbm 1.8.0, zlib 1.2.3, expat 1.2, Sablotron 1.0, libxml 2.7.6, Ming 0.4.2, Webalizer 2.21-02, pdf class 009e, ncurses 5.3, mod_perl 2.0.4, FreeTDS 0.63, gettext 0.17, IMAP C-Client 2007e, OpenLDAP (client) 2.3.11, mcrypt 2.5.7, mhash 0.8.18, eAccelerator 0.9.5.3, cURL 7.19.6, libxslt 1.1.26, libapreq 2.12, FPDF 1.6, XAMPP Control Panel 0.8, bzip 1.0.5, PBXT 1.0.09-rc, PBMS 0.5.08-alpha, ICU4C Library 4.2.1
MD5 checsum: 89c13779cf6f0925d5c1c400d31a1cc3
It was last updated two weeks ago, so the versions will be pretty close to up-to-date. I'm running the Linux version myself, and it's working great. Python is a very easy install. It doesn't need to be directly tied to the web server.
I believe Ming is a Linux-only solution, but I may be wrong. It may have been ported to Windows by now.
Most of the non-standard packages you're looking for are pretty straightforward add-ons to an existing server. Make your existing server with XAMPP and then tinker to your heart's content.
I wouldn't get too uptight about using the absolute latest version of everything, because it may not all be configured to run together. Go for a stable package as a starting place, and add one component at a time, ensuring you can always back up to the last stable snapshot.
XAMPP is perfectly fine for production work. You just need to change a few security settings. (add a root password to mySQL, and clean up the httpd.conf file.) That's nothing compared to the work it will take to make the whole thing from components.