Usa:
WHERE registrationdate BETWEEN '01/01/2003' AND '12/31/2003'
... ma come ha sottolineato GBn, per essere sicuro delle impostazioni locali, usa:
WHERE registrationdate BETWEEN '20030101' AND '20031231'
SQL Server eseguirà la conversione implicita della stringa in una data, a condizione che sia un formato supportato. La conversione esplicita è quando devi utilizzare CAST o CONVERT per modificare il tipo di dati.
Quando si converte '01/01/2003' in DATETIME, la parte dell'ora sarà 00:00:00 perché non è stata specificata.