So you do have the original object with the text as cavities, yet not in the correct position?
Pressing both CTRL and SHIFT key drag a window around the text geometry.(not sure if this works in V4)
This wil make a sub-selection of the text geometry and you can now move it in place on the surface while maintaining the solid integrity.
Extract the upper surfaces.(Also the enclosed surfaces like in the Da Boe)
Leaving the outershape and text as separate objects:
Position the text as you like and run the command _PlanarSrf.
Select all naked edges on the geometry and hit enter:
As above extract the top surfaces and run _Cap on the base shape.
The base will be closed into a solid.
Select the text geometry and move it where you like.
Run command _BooleanDifference to subtract the text from the case
It’s crucial that from the text, all uppersurfaces are extracted/deleted as well.
As for smoothing the text perimeters, you can run FilletEdge to create fillets on the edges, yet it’s sometimes a hit and miss as to what radius will work.
Please report back if you have any further questions.