Thanks very much for posting this workflow. I think you are mistaken on one point however.
This is an old post but hopefully someone will respond if the below does not add up.
By correcting your relative elevation values with a home point barometric elevation value I believe you are potentially introducing rather than doing anything to eliminate barometric elevation variance into your resulting absolute elevation values.
Barometric variation may cause an absolute elevation value to read higher or lower than is true but should not affect the relative accuracy (given that pressure conditions are regionally stable). For a simplified example if the actual elevation is 100m and your barometer reads 200m and then you walk uphill 50m your barometer will read that pretty accurately and give you an elevation of ~250m.
Since the DJI barometer is giving you a relative elevation value (above your control/home point elevation) you should correct it with the best available elevation value for your home point. A good quality calibrated barometric elevation reading may meet this qualification however I would check as to what data it is using to calibrate you may not be getting a value any better than the consumer grade GPS elevation that you are trying to bypass with this whole process (although at least it would be a consistent variance across the dataset since it comes from one reading).
For example at the below link for an iphone app you can see that there are a variety of ways that this particular app may be calibrated.
https://www.ios-altimeter.com/ Suggested sources for best elevation values: a good GNSS reading at the home point, GIS layers such as: National Elevation Dataset or a local Lidar dataset
Note: there are the scripts as mentioned above however this workflow seems like potentially a better option for projects that involve multiple home points