What I seem to see is SonyVars global variable has function pointers to some driver functions. The ROM driver resource doesn't point to those, it points to stub routines that bounces through the function pointers in the SonyVars. So replacing the ROM driver would be fine, and the System could update SonyVars, the System's routines just wouldn't get invoked since the replacement ROM driver wouldn't refer to SonyVars. The only problem with the System patching SonyVars is if the replacement ROM driver decided to hijack that global pointer for its own purposes and start storing data that the System could possibly overwrite.
Anyway, that's going from memory, and I don't know if the System ever patches SonyVars, so take it all with a grain of salt.
Anyway, that's going from memory, and I don't know if the System ever patches SonyVars, so take it all with a grain of salt.