I'm not certain I follow your logic there ....
I can't agree that is it "better" to have a software based RAID system - it is certainly cheaper, and at the price point that these units are designed for, probably the only way to do it - with hardware RAID the price would be significantly higher.
A couple of points ....
First - we're discussing the DNS-343 here, so I believe we also have the option of RAID5.
Second - I believe that regardless of the RAID level involved, hardware RAID has advantages - there may not be a significant performance advantage when dealing with RAID0 or RAID1, but there certainly is at RAID5. There is also a manageability issue - I have been using hardware RAID for close to fifteen years now, so called "FakeRAID" (what you describe as software based RAID cards) for almost three years, and software RAID (where the RAID functionality is handled by the OS - which is how it's done on these units) for around six years - with hardware RAID & FakeRAID, the RAID functionality is completely transparent to the operating system, it does not know how many physical drives exist.
From a maintenance point of view, replacing a failed drive is a snap with today's hardware RAID controllers - look for the orange LED, pull the drive out, put a new one in and watch it rebuild (assuming you have hot swap hardware and SATA is designed for hot swap). FakeRAID on Windows is no different, it works exactly the same way - however - for reasons best known to themselves, the linux community seems to have chosen to shun FakeRAID (I believe that is where the somewhat derisive term was coined) preferring to handle it in the operating system.
By comparison - replacing a failed drive with software RAID can be a living hell, especially if the unit boots it's operating system from the RAID array - fortunately the D-Link DNS series of NAS deviuces boot the OS from flash, making things just a little easier.
It is my belief that many of the data loss scenarios documented on the DNS-323 (the 322 & the 343 are still too new to have developed a reputation, either good or bad) are the result of scripts that attempt to automate the drive replacement process - scripts that no doubt have been written to the best of the developers ability, but scripts that fail to take account for all of the possible scenarios that can occur in the real world. The fact that Linux will very cheerfully assign hda (or sda) as the first disk drive it finds with no consideration for the hardware port the drive may be connected to is no doubt a contributing factor.
As you have just pointed out - firmware on a hardware RAID card is nothing more than software dedicated to the task at hand - it is no more difficult to flash the firmware on a hardware RAID card than it is to flash the firmware on one of these units. In fact, if D-Link had chosen to use hardware RAID, then a RAID firmware flash could be incorporated in an OS firmware flash without the user being aware of it.
No, I definitely cannot agree with you - if anything software RAID - as in RAID handled by the operating system - is much more difficult to manage than either FakeRAID or hardware RAID, and has to be considered as the price we pay to keep the cost of the product where we can afford it - if you like, a necessary evil