Although this is not the ideal way to do it I'm assuming that it can't be done by applying templates client side, they're probably applied to each tab during the server side rendering process even if the template is laid out in the design view.
But still, if anyone knows how to apply a template to a tab created client side I'd love to hear it.
For anyone that needs my solution here is what I have:
In the global template I'm adding an image (an X) that I can use to close a tab.
<label style="cursor: pointer"><%# DataBinder.Eval(Container, "Text") %></label>
<img alt="Delete Tab" title="Delete Tab" src="Images/delete_8x8_disabled.gif" onclick="RemoveTab(<%# DataBinder.Eval(Container, "Index") %>, event);" class="tab_DeleteImage" onmouseover="this.src='Images/delete_8x8.gif';" onmouseout="this.src='Images/delete_8x8_disabled.gif';" />
This will apply the template (a label for the text and an image for the close button) to all tabs created on the initial load of the page.
var deleteImage = document.createElement("img");
deleteImage.title = deleteImage.alt = "Delete Tab";
deleteImage.className = "tab_DeleteImage";
deleteImage.setAttribute("OnClick", "RemoveTab(" + inTabIndex + ", event);");
deleteImage = CreateDeleteImage(tab.get_index());