I have discovered a simpler method, so I am updating with an alternate solution here:
Navigate to the SharePoint library containing your document set
Create a new Edit Form, based on the Document Set Content Type (no need to set as default)
At this point, we should have an Edit form for the Doc Set Content Type. Open this file in designer and find the section that begins with:
<WebPartPages:WebPartZone runat="server" FrameType="None" ID="Main" Title="loc:Main"><ZoneTemplate>
Find the following WebPartPages:DataFormWebPart tag and copy the __WebPartId attribute for safe keeping. (We will return to this section of the file later)
Next you will need to copy the following ListFormWebPart (Version 2) markup:
<WebPartPages:ListFormWebPart runat="server" __MarkupType="xmlmarkup" WebPart="true" __WebPartId="{COPIED WEBPART ID}" >
<WebPart xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/WebPart/v2">
<Title>LIBRARYNAME HERE</Title>
<FrameType>Default</FrameType>
<Description />
<IsIncluded>true</IsIncluded>
<PartOrder>2</PartOrder>
<FrameState>Normal</FrameState>
<Height />
<Width />
<AllowRemove>true</AllowRemove>
<AllowZoneChange>true</AllowZoneChange>
<AllowMinimize>true</AllowMinimize>
<AllowConnect>true</AllowConnect>
<AllowEdit>true</AllowEdit>
<AllowHide>true</AllowHide>
<IsVisible>true</IsVisible>
<DetailLink />
<HelpLink />
<HelpMode>Modeless</HelpMode>
<Dir>Default</Dir>
<PartImageSmall />
<MissingAssembly>Cannot import this Web Part.</MissingAssembly>
<PartImageLarge />
<IsIncludedFilter />
<ExportControlledProperties>true</ExportControlledProperties>
<ConnectionID>00000000-0000-0000-0000-000000000000</ConnectionID>
<ID>g_COPIED WEBPARTID WITH DASHES AS UNDERSCORES</ID>
<ListName xmlns="http://schemas.microsoft.com/WebPart/v2/ListForm">{LIBRARYID}</ListName>
<ListId xmlns="http://schemas.microsoft.com/WebPart/v2/ListForm">LIBRARYID</ListId>
<PageType xmlns="http://schemas.microsoft.com/WebPart/v2/ListForm">PAGE_NEWFORM</PageType>
<FormType xmlns="http://schemas.microsoft.com/WebPart/v2/ListForm">8</FormType>
<ControlMode xmlns="http://schemas.microsoft.com/WebPart/v2/ListForm">New</ControlMode>
<ViewFlag xmlns="http://schemas.microsoft.com/WebPart/v2/ListForm">1048576</ViewFlag>
<ViewFlags xmlns="http://schemas.microsoft.com/WebPart/v2/ListForm">Default</ViewFlags>
<ListItemId xmlns="http://schemas.microsoft.com/WebPart/v2/ListForm">0</ListItemId>
</WebPart>
</WebPartPages:ListFormWebPart>
You need to update the following sections in the markup:
__WebPartId="{COPIED WEBPART ID}"
- Put the webpart ID you copied earlier between the brackets
<Title>LIBRARYNAME HERE</Title>
- Put the display name for your library here
<ID>g_COPIED WEBPARTID WITH DASHES AS UNDERSCORES</ID>
- Replace the dashes in the webpart ID you copied earlier with underscores and put it after the 'g_'
<Title>LIBRARYNAME HERE</Title>
- Put the display name for your library here
<ListName xmlns="http://schemas.microsoft.com/WebPart/v2/ListForm">{LIBRARYID}</ListName>
- Put the list ID (with dashes, can be gotten from SP Designer) between the brackets
<ListId xmlns="http://schemas.microsoft.com/WebPart/v2/ListForm">LIBRARYID</ListId>
- Put the list ID (with dashes, can be gotten from SP Designer) between the tags here
Once these changes to the markup are done, lets go to the Edit Form we created earlier and delete the contained content between the following (or simply overwrite it with the ListFormWebPart (Version 2) markup we created):
<WebPartPages:WebPartZone runat="server" FrameType="None" ID="Main" Title="loc:Main"><ZoneTemplate>
&
</ZoneTemplate></WebPartPages:WebPartZone>
Finally, we take Jake's advice and:
"At this point, you associate this form with the target Library's Document Set content type as the "New Form". " This is also done through SharePoint Designer from "Lists and Libraries" > "Your DocSet Library" > Content Types (Lower left hand panel) > Click on the Content Type you want to modify"
Update the NewForm link to reflect the link to the form we just created.
You should now have a working custom New Doc Set Form. You can even edit the page and add additional webparts!