They should be, to put the users in the Q&A mindset; instead of in the discussion mindset, which happens when the question titles are not in the question format.
Where they're not, people can (and do) edit them. It'd be a bit difficult to enforce this programmatically. Imagine if you got this error:
Your title "format this date" is not a question.
Some users would just do this: "format this date?", which isn't any better.
The only solution to this is for users with sufficient reputation to edit questions which aren't titled as questions.