Are your content derived from the event content type though? I believe the event content type to be hidden, but creating your content types using a feature and by using the content type id hierarchy to have your Available / Unavailable content types derive from the sharepoint event content type would solve your problems. Remove any fields (site columns) you don't need.
Use the xml snippet below to create a derived content type. IMHO it is always best to first create a base content type derived from an out of the box sharepoint ctype when you plan on creating more than 1 version of that ctype.
<!-- 0x0102 is the sharepoint event content type's id,
00 is a splitter,
the rest is a guid that you generate, stripped of dashes and {}
i.e. {54646609-853E-4f28-B4F8-B6258DBFD632}
add 01, 02, etc. at the end to create ctypes derived from this base ctype-->
<ContentType ID="0x01020054646609853E4f28B4F8B6258DBFD632"
Name="Event Derived Base Content Type"
Description="This serves as a base for all your event ctype derived ctypes"
Group="Group the ctype should fall under in ctypes site settings page">
<FieldRefs>
</FieldRefs>
</ContentType>
<!-- by adding 01 you create a new, specific purpose ctype-->
<ContentType ID="0x01020054646609853E4f28B4F8B6258DBFD63201"
Name="Available"
Description="Your description"
Group="Name of group">
<FieldRefs>
</FieldRefs>
</ContentType>
<!-- same for 02 -->
<ContentType ID="0x01020054646609853E4f28B4F8B6258DBFD63202"
Name="Unavailable"
Description="Your description"
Group="Name of group">
<FieldRefs>
</FieldRefs>
</ContentType>