Group based system.
Employee allocated to group A, B or C when joining company.
summer 2007 priority A then B then C
winter '07-'08 priority B then C then A
summer 2008 priority C then A then B.
etc.
Highest priority get whatever they ask for regardless (max 2 weeks during peak), second group only if space left, third group just have to be lucky no one else asked for the same period...
Seems fair to me, means I don't always get what I want though....