You can't use "volatile" functions like [Today] in calculated fields. The reason is that the values of calculated fields are only computed when the list item is created or updated, so unfortunately it is not possible to do what you require using a calculated field.
You can "trick" SharePoint into allowing a [Today] expression in a calculated field by temporarily creating a column called "Today", then modifying the expression, then removing the temporary column. This circumvents the syntax checker but doesn't remove the underlying problem, because the value won't get updated until the next time you modify that list item.
It should be possible to do this with custom XSLT in an XmlListViewWebPart, or its predecessor DataViewWebPart (as mentioned in another answer). You could also do this with custom code, of course.