Language evolves flexibly, not rigidly.
Wiki says the following for ain't :-
[Quote]
Etymology
According to Etymology Online, the term was first attested in 1706 meaning am not, and it was used with that sense until the early 19th century, when it began to be used as a generic contraction for are not, is not, etc. in the Cockney dialect of London. It was then "popularized by representations of this in Dickens, etc., which led to the word being banished from correct English."
The shift from /ænt/ to /eɪnt/ parallels a similar change some dialects made to can't. In other dialects, the pronunciation shifted to /ɑːnt/, and the spelling aren't, when used to mean “am not”, is due to the fact that both words are pronounced /ɑːnt/ in some non-rhotic dialects. Historically, ain't was present in many dialects of the English language, but not in the southeastern England dialect that became the standard, where it is only found in the construction ain't I.
As a contraction of have not and has not, ain't derives from the earlier form han't, which shifted from /hænt/ to /heɪnt/, and underwent h-dropping in most dialects.
[END QUOTE]