Somehow you are "mixing" a few concepts (don't worry, it is normal, but when doing this kind of things there is a necessity to be rigorous/exact).
MS-DOS 6.22 does not "understand" FAT32, it (the DOS 6.22) was released two years before the FAT32 was "invented" and the first OS to be able to access it was Windows 95 OSR2 (or DOS 7.0 7.1 if you prefer). Even NT 4.00 does not understand FAT32.
FAT32 was devised to be - while very similar overall to FAT 16 in structure - a "new" filesystem with a "wider" range of possibilities.
The physical limit in size of a FAT16 volume is - in practice - 1 Gb (it is possible to go as large as 2 Gb, but it is normally NOT advised).
There is NO IO.SYS "in the MBR" in your stick, actually there is no "IO.SYS", FreeDOS has kernel.sys as "main OS file".
The normal booting sequence in a MBR "style" device is the following:
BIOS->MBR->PBR of the active partition in MBR's partition table->Kernel.sys
Multibooting is not a problem per se, but it does imply (in the case of MS-DOS 6.22) some limitations (the FAT 16 format of the volume is one of them) or - in order to avoid these limitations - the introduction of more complex "overlays".
Some (smaller) limitations/inconveniences may be due to the desire to multiboot with 7, to boot via BOOTMGR, etc.
And now you have to understand how each and every "automated" tool, such as WinsetupFromUSB or RMPREPUSB are designed to do something along a given "path".
Particularly WinSetupFromUSB is designed to solve the issue of installing several versions of Windows from USB, and in order to do this may (or may not) need some specific setting that may (or may not) be contrasting with your declared goal of running the DOS from the stick ti run the "specific software" for the "expensive hardware".
There is no way to know without knowing the specifics of the given software.
RMPREPUSB, though more "flexible" in some senses, suffers in part of the same issues, it defaults to some settings/ways that may (or may not) be compatible with your intended use.
Anyway, as always, FORGET (temporarily) about menu.lst.
Grub4dos provides a command line interface, in it you can test the commands before writing them in a menu.lst entry.
The commands needed to boot a FreeDOS (provided that the FreeDOS is installed "normally" in a partition of the stick are usually:
find --set-root /kernel.sys
chainloader /kernel.sys
boot
Those commands, once tested and successful will translate in a menu.lst entry such as:
title Freedos
find --set-root /kernel.sys
chainloader /kernel.sys
But on a "static" USB stick, it would make more sense to hardcode the device *like*:
root (hd0,0)
chainloader /kernel.sys
Anyway, if the FreeDOS right now doesn't boot directly in a way suitable to run your programs, that must (should) be fixed BEFORE adding grub4dos (or anything else) to the mix.
Now, be nice, forget (temporarily) about multibooting and grub4dos and anything else and just follow the given tutorial:
http://reboot.pro/to...isk-boot-image/
if your QEMU install on the image works, and works correctly with your software, AND it continues working once transferred to the USB stick, THEN (and only THEN) we will add more complications, multibooting, grub4dos, etc.
IF there are issues of any kind, believe me, it is better to find and solve them BEFORE adding complications to the build.
Wonko