I found the variable that is supposed to be the instance no drop flag. It's currently labelled as unknown40 in the header. I'll rename it and merge it to the SVN later tonight, but for now the quick fix is to change the serialization code to
SoF.cpp
Code:
hdr.charges = charges;
hdr.unknown040 = inst->IsInstNoDrop() ? 1 : 0;
hdr.unknown044 = 0;