Since the 8500 dll resolved the goofy voicemail character that displayed when running the 3125 dll, I took the 8500 DLL, changed the BT icon to a blue one, imported the block style EDGE images from the 3125 DLL to overlay the plain text versions in the 8500 dll, resigned it using the signtool utility in Visual Studio (used the priv developer cert and private key), and boom, works perfectly.
One other thing I discovered, while you can't copy over the DLL while it's running, you can rename it. So rather than have to make those registry entries that ateece mentioned, you can simply name your new DLL something like SubDisplayDLL.dll.new, copy it to the phone, rename the existing SubDisplayDLL.dll to something like SubDisplayDLL.dll.original, then rename your new dll back to the main filename, SubDisplayDLL.dll...then reboot. No registry editing necessary.
From what I can tell, this DLL is not .NET managed code, so the only editing that's really possible (at least w/ my skills) is to change the resource stuff. I guess if you know enough to decipher hex code, you can edit other parts of the file, but that's not a skill in my toolbox, nor will it be.
I also extended ateece's research to the GenTimer application I purchased recently. I never liked the background images that were stock on that app, and they were 'embedded' in the EXE. I edited those to things I liked, resigned, copied to the phone, works fine. So, I can now 're-skin' that app the way I want it.
Next stop, CommManager.exe, to make that screen totally black, w/ white buttons.
A big THANKS to ateece for figuring this out...lot's of possibilities here...