You can write your own ISyntaxModeFileProvider implementation that loads the file from a different location (e.g. embedded resource)
public interface ISyntaxModeFileProvider
{
ICollection<SyntaxMode> SyntaxModes { get; }
XmlTextReader GetSyntaxModeFile(SyntaxMode syntaxMode);
void UpdateSyntaxModeList();
}
The SyntaxModes collection must return a list of modes used by your application - simply use the appropriate SyntaxMode constructor. For the Syntaxmode class, "FileName" doesn't have to be a real file, it can also be a resource name.
Then implement GetSyntaxModeFile to open an XmlTextReader for that syntax mode.
UpdateSyntaxModeList can stay empty, it's only used if your list of syntax modes changes at runtime.