One reason to care that is often understated: it is much easier to test the core when nothing external is reachable from it.
Not faster tests — although that too — but tests that express behaviour rather than plumbing. When the core depends only on interfaces it defined, a test provides simple in-memory implementations and the test reads as a statement about the business rule. When the core depends on the persistence layer, the same test needs a database or a heavy mocking framework, and it ends up asserting about calls rather than about outcomes.
That difference compounds over years more than any swap-the-database argument, which almost never happens.