As with most things an example would go miles. Can you put up a page on apex.oracle.com? Otherwise it's sort of difficult (for me at least) to start helping without seeing.
I think you have DA which which fires on Page Load to execute JS which is giving a look of "Google Calendar". Now when you click on any APEX default buttons, APEX is performing an AJAX call to refresh calender region and thus your changes are gone.
To fix this, all you need to do is, create another DA which fires on "After Refresh" of "Calendar" region. In this DA, you can execute same JS which you have used in above JS.
Hari, that works absolutely perfectly! I don't know why I never did that myself, I suppose I was too busy looking for the most elegant solution, when the obvious and simple one would have worked for me just as well. Thanks again