The main weaknes is lack of foreign key support. Last I heard they never intend to implement it due to the performance hit. This is a DBA's nightmare!! To implement foreign keys in production or not is a business decision. If data integrity is not as important as performance, then fine, drop the FK's. In my experience, the benefits of data integrity have far outweighed any miniscule performance gain from not having FK's.
If you want a good, open source database system, look into PostgreSQL (PGSQL) and/or FirebirdDB. Both appear to be mature systems. The only reason PGSQL didn't beat out MySQL, imo, is from lack of marketing and a kind of smug attitude I have seen in their user community. Many of the posts I have seen in their newsgroups have had a distinct technology-bigot attitude. They recently changed their web site so maybe they are getting with the program now though
I haven't looked into FiredbirdDB very much but it looks like they have a nice community surrounding it and one of the originators of the system (when it was a commercial product) is currently in charge of it. Also, both DBMS' has .NET clients.