I have a quite simple code which is saving MS Word documents using Microsoft.Office.Interop.Word which uses MS Word with COM.
Object fileName = docPathDocX;
Object tr = true;
Document document = _application.Documents.Open(ref fileName);
document.SaveAs(FileName: docPathDocXEmbedFonts, EmbedTrueTypeFonts: tr);
Also I use in a .docx documents a custom .ttf font which is installed for all Windows users. When I run this code under Visual Studio all work perfect. I have .docx document with embedded custom font. On the other hand, when this code is run under IIS (MVC application) the custom font is not embedded although other system fonts are embed.
I suspect the reason could be lack of IIS user rights, but my efforts in this area haven't bring any results yet.
Read more about that in the Considerations for server-side Automation of Office article.
If you deal with open XML documents only you may consider using the Open XML SDK 2.5 for Office instead.