No idea when he died (I know it is the date of Shakespeare's death), and most Saints' Days do celebrate the date of death; but the man is a Saint and therefore his celebration is according to ecclesiastical rules - there are no non-ecclesiastical Saints by definition. As for "for most" - that would need clarification. The major point of this thread is that the majority in England have no idea what we are talking about anyway...very sad indeed.
The problem seems to be due to the fact that (apart from dating problems) there is no English National Day. Others within the UK have national days which they align with their Patron Saint. It is not true of every country, obviously. France has Bastille Day as the National Day; this is secular and not aligned with the Patron Saint of the Nation; the regions all have their own Patron Saints and their days are celebrated regionally. There is no rule that says a National Day has to be a Saint's Day. The US with Independence Day is another case in point. The Greeks have "Ochi" Day ("No" Day). These secular days celebrate political events. The older the people and their idea of nationhood, the more likely the National Day is to be a Saint's Day. The recorded date of death for St David is March 1st, 569. It was not until the 18th century that it became a National Day. An attempt to make it a Bank Holiday in Wales failed under the Blair administration about eight years ago. So the road to National Days is not an easy one!
In any case we must be careful with assigning dates to particular events as there has been more than one calendar over the centuries. Dates quoted for Saint David, William Shakespeare and Saint George all need double checking in that light anyway. After all, the Soviets modernised their calendar and wound up commemorating the October Revolution in November, which is when it occurred, according to our present calendar.