Vous utilisez AND, ce qui implique que les deux conditions doivent être vraies. Vous devez utiliser OR à la place :
select vehicle_registration
from trips
where departure not between :departure and :return
or return not between :departure and :return
D'un côté non, comme l'indique la coloration syntaxique, return
est un mauvais nom à partir d'un nom de colonne. C'est un mot réservé dans Oracle et vous devriez l'éviter si vous le pouvez.