Did you do any testing for this?

According to this [article from early 2012](http://john.foliot.ca/required-inputs/), it makes sense to add both `required` and `aria-required`, though in the long run we should only use the `required` attribute, since that's in HTML5 and is at least supposed to map to the same accessibility API.

Apart from that, adding the required attribute before first validating is likely to late. It should be present on all required elements when the element is first focused, since that is the moment at which the screenreader describes the field.