How do some microcontrollers implement baud rates even though it uses crystal frequency not scalable to standard baud rates?
The UART doesn't care as long as it is reasonably exact.

\$\frac{15000000}{230400}\approx65\$

\$65\cdot230400=14976000\$

So your UART is going to be too fast by a factor of \$\frac{15000}{14976}\approx1.002204\$. It becomes a problem at \$1+\frac{1}{2\cdot11}\approx1.045\$, when the time shift across 11 bits is more than half a bit.