why dgb can be sent to non-existent wallet? You can also make some kind of protection
That would be difficult. It would need a new type of entry in the blocks and every wallet would need to send their created addresses for registering there. Then every wallet would need to build a database with all addresses, which would bloat the wallet by quite a bit, and scan this database for every transaction for the receiving address, at least for not recently used ones. It'd still slow down doing a transaction but at least be a lot quicker than rescanning the whole blockchain for the receiving address. Plus you couldn't just give out, or use for own purposes, an address of a cold wallet because the address generating wallet must be online, or the address imported into one, before an address can be used for receiving funds.
Anyway, it's not much different for bank transactions. While that shouldn't work for non existing IBANs it's a lot more likely to wrongly insert an existing one there and if that happens the funds are gone, no matter if by typo or fraud, if the wrong receiver is not nice enough to send them back. Banks could reverse those transactions, they do if it's their fault, but if they don't have to pay for a mistake then it's your bad luck and problem and the transaction final.