When do I get to fix your fix for Nicks code? :-)
Seriously, though, the first time you run, you can time how long the trial period is, perhaps writing a checkpoint to disk every 30 seconds. The next time you run, simply shave 30 seconds off the last measured time, and when you get to that point, put up your own screen. (Yes, if the user stays at that screen for 30-60 seconds, the XNA screen will replace yours. Them's the breaks :-)
This implementation is based on the theory that IsTrialMode will always be time based. We know that they previously used a 4 minute trial, and then kicked it to an 8 minute trial. They may change it yet again some time in the future, so hard-coding a screen at 7 minutes is probably not future-proof enough, but measuring the trial time each time you run, and basing off that, ought to be enough.
Jon Watte, Direct3D MVP
Tweets, occasionallykW X-port 3ds Max .X exporter
kW Animation source code