Thanks Paul for looking into this. Bummer that FSX/P3D don't have that move aircraft ability built-in. However based upon your suggestion, I tried this and it did indeed keep it to one load time:
//set the time
FSUIPCConnection.UTCDateTime = new DateTime(2018, 12, 25, 10, 0, 0);
//Set the parameters for moving the plane
// Set the OnGround flag
bool onGround = false;
// Set the heading (in degrees TRUE)
double? heading = oPos.Heading_True;
// IAS and Altitude set to null as we've set the OnGround flag
double? ias = (int)oPos.Airspeed_IAS;
FsAltitude? altitude = FsAltitude.FromFeet(oPos.Altitude);
// Set level plane on the ground
double? pitch = 4.21;
double? bank = 0;
// Call the method
FSUIPCConnection.MoveAircraft(newPos, onGround, altitude, heading, pitch, bank, ias, true);
I'll have to write a convertor to get the move-to airport date/time into UTC, but that appears to be relatively trivial once you use the .NET TimeZoneInfo class. I did have P3D lock up once right after the call and eventually crash so I'll need to test this a bunch to make sure that it will be reliable. But at least this does save another scenery load.
Thanks!