In the legacy TeX symbol fonts, the square root symbol hangs from the baseline and its (very small) height is used as the thickness of the vinculum. Due to how math lists are transformed into horizontal lists, the symbol is then raised suitably.
The developers of Latin Modern Math simply took the symbol from Computer Modern with the same feature.
In all other OpenType math font I know, the “surd” symbol sits on the baseline.
If you plan to experiment with different math fonts, you can write code that chooses whether to keep the surd as defined or to raise it.
\documentclass{article}
\usepackage{unicode-math}
%\setmathfont{Libertinus Math}
\makeatletter
\AtBeginDocument{%
\sbox\z@{$\surd$}%
\ifdim\ht\z@<1ex
\RenewDocumentCommand{\surd}{}{\mathpalette\surd@\relax}%
\fi
}
\newcommand{\surd@}[2]{%
\raisebox{\depth}{$\m@th#1\Umathchar"0 "2 "221A$}%
}
\makeatother
\begin{document}
$\surd$blah
$\scriptstyle\surd b$
\end{document}
With Libertinus Math commented, you get

With Libertinus Math, you get

\fontfam[lm] $\surd$blah \bye. I don't know why only LuaLaTeX and XeLaTeX have this problem. – wipet Aug 28 '23 at 04:20