I have been attempting to figure out the same thing, and your post has helped me get pretty close.
First if the data for the status chart is not updating then the data property will not change, so your code will not be executed.
In my particular case the status chart has a tag history binding with the polling mode set to relative and a polling rate set to 15 sec.
The first thing that I did was to add the needed script to the internalFrameActivated event on the window, again my particular case has multiple charts so my code is slightly different for that reason.
The next thing I did was to add a similar script to the property change event of the status chart, but I filtered for data and propertiesLoading.
if event.propertyName in ['data','propertiesLoading']:
axis = event.source.getChart().getPlot().getRangeAxis()
This all seems a bit hacky to me, so I was wondering if you or anyone else had ever come up with a final (better) solution, as mine seems to work with the exception of the occasional flash of the date during a redraw event.