Не совсем уверен, что вы хотели достичь с помощью запроса:
User::whereBetween('date', [$from, $to])->get()
Это в основном получает всех пользователей в системе со столбцом даты между $ from и $ to. Предположительно, это всегда будет правдой. Не должно ли это быть:
Auth::user()->whereBetween('date', [$from, $to])->count()
Что означает: текущий зарегистрированный пользователь в столбце даты между $ from и $ to?
Альтернатива:
$userDate = Auth::user()->date;
if (($userDate >= $from && $userDate <= $to) && ... ) {
...
}