I use a similar approach, I scan at varous temp and with different plate(steel and glass),with a complex bed.g called by G32.
I put this control in homez.g and do it after bed temp settled .
in orca start I have M190 followed by G28.
....
if {fileexists(floor(heat.heaters[0].active)^var.plate^".csv")}
var map={(floor(heat.heaters[0].active)^var.plate^".csv")}
if var.verbose
echo "load "^var.map;
G29 S1 P{var.map};
else ;
if var.verbose
echo "no file .csv! load heightmap.csv"
G29 S1;