As I understood it, OS3.9 patches the kickstart anyway, so without a proper 3.1 kickstart (ie. chip based, not softkicked) it wont work anyway.
The Kickstart 3.1 requirement in AmigaOS 3.5/3.9 is artificial. The image itself is not patched (that is impossible, it is ROM after all), but KickMem and KickTag pointers are used to replace complete resident modules (libraries/devices/resources and such), as documented already in the original RKRMs.
AmigaOS 3.9 BoingBag2 introduced exec.library replacement, so there is no excuse of requiring 3.1 ROM, all modules can be replaced anyway. Earlier the argument was that not all modules could be replaced, for example exec.library and expansion.library.
Thus in theory Kickstart 2.0x would have been sufficient for AmigaOS 3.5/3.9. The SetPatch "AmigaOS ROM Update" loader would have replaced more modules for older kickstarts: KS 2.0x and 3.0 would have been patched upto 3.1 + the OS 3.5/3.9 modules.
One can only speculate the real reason for requiring Kickstart 3.1. The coder's lazyness, H&P's desire to sell more 3.1 ROM chips bundled with AmigaOS 3.5/3.9, or something else... I guess there is no way to know now.