I have to believe that the vast majority of situations would be satisfied with a Weekly and a Monthly option.
The weekly is easy - just select the day of the week.
Your suggestion to have the monthly on a praticular date each month would get little usage (IMHO). People tend to operate around days of the week rather than dates of the month. The 1st Tuesday, 3rd Wednesday, etc option would get heavy usage.
Likewise, every nth week on a certain day woulkd get little usage, IMHO.
No solution will handle all requirements. For instance, I have a general club meeting on the 2nd Wednesday each month and a board meeting on the preceding Thursday (which is either the 1st or 2nd Thursday). Scheduling these oddball events would be much easier if you could modify the screen flow so that we can replicate an event on any date we specify and then repeat the replication WITHOUT having to go back to the event list screen.
The logic flow might be:
1. Select Event
2. Select Replicate (Rather than "New" or "Copy")
3. Select new date and/or change content
4. Publish
5. Repeat items 3 and 4.
The repeated event would have identical properties as the parent event with regards to visibility, etc but the description of the event could also be changed for each occurrence. Each new iteration would get a new copy of the original event, not the one just modified.
Another way to accomplish the same task would be to allow us to change the date on an existing event and then be given the option to create a new (additional) event with the new date or just to re-schedule the old event to the new date.
Gordon