Bo LIMIT odnosi się do końcowych wierszy wyniku (który jest 1, bo suma jest jedna), a nie wierszy wyciąganych z tabeli.
Do czegoś takiego musisz zrobić zagnieżdżone zapytanie które da Ci te 5 rekordów i dopiero wtedy je posumować, na przykład
select sum(dt) from (
select dt
from (...)
limit 5
);