Если вы определяете свой собственный bean-компонент DataSource, почему он не конфликтует с тем, который в противном случае создал бы автоконфигурация Spring Boot?
Метод компонента DataSourceAutoConfiguration охраняется @ConditionalOnMissingBean(DataSource.class). Поскольку ваш собственный bean-компонент DataSource регистрируется первым, условие не выполняется, и автоконфигурация автоматически прекращает работу вместо создания дублирующего/конфликтующего bean-компонента.