There indeed shouldn't be much effort needed to migrate - almost all of the Sphere 1.5 API is implemented. I tried to make it as painless as possible to phase in the new features too - in large part you can mix Sphere v1 and v2 functions freely (objects are not interchangeable, however).
There's really only a handful of stuff that's not implemented, mostly some esoteric APIs like Complex() and a few surface blend modes (because they're impossible to implement with the OpenGL fixed-function pipeline), but otherwise everything should work correctly. There shouldn't be any issues with fonts though; what kind of bugs did you encounter there?
In the case of the font, it seems to either switch to a default font instead of the font loaded, or just not draw the transparencies of the font. As far as I can remember, the only special things done to the font was possibly a color mask and doing the zoomblits. In the case of the images, it seemed to be transparencies with zoomblits (basically, everything is a zoomblit). Doing a quick re-look, I can't find the transparency with images problem, but I found a new bug wherein the restart(); function doesn't seem to reread the .sgm file like Sphere 1 does. Sort of. The first restart to change resolution works well enough (it doesn't work the same with the 320x240 option, but I assume that was deliberate), but the later restarts which were added to get around out-of-memory issues of (hopefully) yesteryear cause the engine to restart at the options menu instead of going to where it left off.
I also noticed some other differences as well with I think off-by-one pixels when drawing lines of text character by character vs drawing all the characters at once (a bit hard to explain, I'll have to send you a demo to explain that one). When I finish the rest of the game, I can move over into doing the port fully, and give you a comprehensive list of the things I find.
In terms of the fonts, here's some screenshots: