Выходной день или нет - это зависит только от производственного календаря некоторого государства. Соответственно, нужно отнимать одну дату от другой, из дельты получать количество дней, потом откуда-то получать производственный календарь в неком формате, парсить его, и отнимать от календарных дней дни нерабочие.