MailMessage uses MimeMessage internally and adds additional features such as MSG support and MIME tree normalization, but these featurs are not needed for creating vCalendar entries. On the other hand, MimeMessage/MimeEntity offers much more control over the message structure. Most of the headers such as From, To, Subject, Date are supported by both MailMessage and MimeMessage. MailMessage's AlternateViews, Resources and Attachments are abstractions and don't directly resemble the message structure. A MaiMessage with a single AlternateView might actually result in a MIME message with two MIME entities or a single MIME entity, depending on whether the DisableSinglePathHtmlWorkaround option was specified. With MimeMessage/MimeEntity, there is no such abstraction. The objects directly correspond to MIME entities.
DisableSinglePathHtmlWorkaround is not needed for MimeMessage because you have complete control over the message structure. A single instance of MimeMessage or MimeEntity represents a single MIME tree node, and child entities are only present if you explicitly add them to MimeMessage.Parts (or MimeEntity.Parts) collection.
.SetContent("content", "text/calendar") will result in a MIME entity with a content of "content", content type of "text/calendar" and with no child entities, which seems to be exactly what you need.