休日 and 休暇 means a day offmean a day off. 休み sometimes mean a day offmeans a day off, but also means taking a resttaking a rest.
It seems 休日 is a day off as aunder the company/school regulation.'s regulations: Like Saturdays, Sundays and national holidays. 休暇 is a day off that is not according tostipulated by your school/company regulation's regulations, but you apply for a day off and they acceptapprove it.
ForFrom my personal experience, people don't distinguish between 休日 and 休暇 strictly. They just means a day offmean a day off.