Event members only for 3 days then open to the public
There are methods to do members-only events on this Stack Exchange question: Is it possible to restrict event registration to members?

Since you're willing to write an extension, it's probably a good use of your time to start with the Members Only Event extension and add the ability to automatically open the event to the public after a certain date, which would be added to the custom fields that the extension creates.  Please don't forget to submit a pull request with your feature to the author!