Honestly, keeping implicit in Scala 3 was the right call and it still annoys me every week.
Right call because nobody had to rewrite a codebase on day one. Old-style implicits still compile, Scala 3 can use libraries built for 2.13, and you move to given and using one file at a time.
Annoying because the half-migrated file is the hardest Scala to read. One instance comes from an implicit val, the next from a given, and you need both rule sets in your head to find where a value came from. The new rules are better on their own. A wildcard import like import foo.* no longer pulls in givens, you write import foo.given and the import says what it brings. Implicit conversions go through Conversion now, and using one without importing scala.language.implicitConversions gets you a feature warning.
So yes, compatibility won. The price is a long stretch where readers carry two mental models, and I haven't seen a date for the old one to go.