Regards generic: you would normally have country in the holiday table unless your system will only work in one country - so it's not very generic at the moment. You could also have a flag to indicate that a holiday occurs on the same day each year but seeing as they all shift about depending on the phases of the moon etc you'd probably do better just adding in the holiday dates at the start of the year.
Regards performance: how often are you wanting to insert new holiday values into your holiday table?
I have one basic sql insert script, which contains seven to eight insert queries. but i don't think this optimised/generic one.
Why do you think the INSERT "is not optimised"?
I can't think of any "non-optimised" INSERT statement (unless it uses an INSERT ... SELECT structure)
But without seeing the statements that you suspect there is no way of telling whether they could be improved