I believe the biggest pro of hardware RAID is that, providing your RAID controller is battery backed, you can enable write-back cache. This can also be achieved similarly through software RAID with specific OSes and SSDs acting as the cache. This gives huge performance gain, but if used without this hardware, can cause corruption and ruin hard drives as the cache is never written solidly.
Presumably the cache never exceeds 16/32GB, why would hard drive controllers not include flash memory chips (dirt cheap?) so write-back can always be enabled with no data corruption on power loss? If power was lost, the cache could be written on boot providing disks at time of failure.
Seems like it would improve not only software RAID but also any general users who could have write-back cache enabled as standard to benefit from the performance increase.