It used to be the last Sunday in January. It was changed after 9-11 because games were delayed to the first Sunday in February. They have left it there since then.
The Super Bowl is not always on the same day. They first set dates for the regular season and go from there. They plan the schedule so that there is always the same amount of "rest time" between regular season games and playoff rounds.
The date of the Superbowl is 2 weeks after the AFC and NFC championship games. It is not always the same date every year but it is always around the same date.