I will answer your final question - people stay because many of them are from Canada, Australia, NZ and South Africa where there are very few jobs with major airlines that compare favourably in terms of salary. Unlike in the States.
CX does pay much much less than in the past - but it is still mostly on par or better than airlines back home for these guys. This is changing slowly. Qantas apparently now offer better career earnings than Cathay ( Hearsay - don't quote me )
Secondly - obviously seniority plays a role too.