I believe DISKCOPY would buffer to C: to avoid disk swaps in sufficiently late MS-DOS versions (6?).I "almost really despise" the concept of paging memory to a disk! Yes, something can still run instead of fail, but at what cost! I've walked up to too many systems where everything has come to a crawl because they had way more memory committed than they had physical RAM. I suppose depending on the situation though, transparently using a disk file would be another option.
Heap is just conventional memory, right? Is your fdimage code special-cased to do disk i/o directly into conventional memory if no EMS/XMS available rather than double-buffering as is necessarily with XMS and as simplifies code with EMS? If not, you would be cutting effective conventional memory capacity in half, right?
If you wanted to get really sophisticated you could bypass DOS access the floppy controller directly and DMA directly into extended memory, right? but https://web.archive.org/web/20121022073637/https://support.microsoft.com/kb/93469 to be aware of.