In addition to what others have said...
db_owner is a role, so you could have lots of users as members of that role...and as previously stated, they can do anything to the database and it's objects.
the database owner is the single user that has been identified as the USER that owns the database...that user would be in the db_owner role, but it adds just a bit more to it
when you start looking at the objects in the database...the tables and such.....a user that owns objects cannot be dropped...so if you wanted to drop that user, you need to make a different user own the objects(or drop all the objects) first.
by default, the database owner is dbo, which cannot be dropped, and it's a special user. but if you make a user 'bob', and make him database owner, and have that user create objects....then you cannot drop the user 'bob' until that user no longer owns objects....usually by transferring the object ownership to dbo.
Lowell