Если в книге важно подчеркнуть, что данное сочетание является названием, а не описательным оборотом, то его нужо писать с заглавной буквы, по правилам для названий праздников.
Правильно: Праздник Весны и Труда. Такая фиксация – и в официальных документах (см. Трудовой кодекс Российской Федерации), и в лингвистических источниках (например, в справочнике Д. Э. Розенталя «Прописная или строчная?»). Такое написание соответствует правилу: с большой буквы пишется первое слово в названии праздника и слова, которым приписывается особый высокий смысл.
Корректны первые два варианта (с тире).
Правильно: ко дню в значении приуроченности к какому-либо событию. Если имеется в виду, что что-то приурочено к празднику, верно: ко Дню защитника Отечества.
Если такого значения нет, а обозначается календарная дата, то верно: к дню; успеть к Дню защитника Отечества.