I don't know what causes the bug you're getting, but I've had very good luck with Spreadsheet::WriteExcel and PAR::Packer. If you just need a .exe and you don't insist on using CAVA to make it, give pp a try. It has always treated me well. Run it with the -x switch to make sure no necessary module is skipped.