I prefer a closed command instead of constantly typing in various switch commands.
In other words: a command that recognizes which symbol is wanted based on upper and lower case, just like you can do with board-input in xskak.sty or chessboard.sty.
So I have as a concoction of here
\def\FirstArgX{text}
\newcommand\skaksymb[2][]{\begingroup%
\def\SecondArgX{#1}%
\ifx\FirstArgX\SecondArgX \usetextfig\textsymfigsymbol{#2}\else%
\if\isuppercase{#2}\textsymfigsymbol{#2}% \usewhitefig
\else%
\useblackfig\textsymfigsymbol{#2}\fi\fi%
\endgroup}
crafted.
(Hint: I didn't get the \skaksymb command to still have the same name as the old one \textsymfigsymbol.)

\documentclass[12pt]{article}
\usepackage[margin=15mm]{geometry}
\usepackage[most]{tcolorbox}
\usepackage{chessfss}
\usepackage{xskak}
\usepackage{chessboard}
\setchessboard{showmover=false}
%https://tex.stackexchange.com/questions/403947/chess-notation-switch-between-color-and-notation-style
\makeatletter
\def\cfssfixbaseline#1{\raisebox{-0.31ex}{\setboardfontsize{\f@size}#1}}
\def\useblackfig{\def\cfss@figlanguage{@BLSB}}
\def\usewhitefig{\def\cfss@figlanguage{@WLSB}}
\def\cfss@king@@WLSB{\cfssfixbaseline{\cfss@WhiteKingOnWhite}}
\def\cfss@queen@@WLSB{\cfssfixbaseline{\cfss@WhiteQueenOnWhite}}
\def\cfss@rook@@WLSB{\cfssfixbaseline{\cfss@WhiteRookOnWhite}}
\def\cfss@bishop@@WLSB{\cfssfixbaseline{\cfss@WhiteBishopOnWhite}}
\def\cfss@knight@@WLSB{\cfssfixbaseline{\cfss@WhiteKnightOnWhite}}
\def\cfss@pawn@@WLSB{\cfssfixbaseline{\cfss@WhitePawnOnWhite}}
\def\cfss@king@@BLSB{\cfssfixbaseline{\cfss@BlackKingOnWhite}}
\def\cfss@queen@@BLSB{\cfssfixbaseline{\cfss@BlackQueenOnWhite}}
\def\cfss@rook@@BLSB{\cfssfixbaseline{\cfss@BlackRookOnWhite}}
\def\cfss@bishop@@BLSB{\cfssfixbaseline{\cfss@BlackBishopOnWhite}}
\def\cfss@knight@@BLSB{\cfssfixbaseline{\cfss@BlackKnightOnWhite}}
\def\cfss@pawn@@BLSB{\cfssfixbaseline{\cfss@BlackPawnOnWhite}}
%
% https://tex.stackexchange.com/a/312066/46023
\def\instring#1#2{TT\fi\begingroup
\edef\x{\endgroup\noexpand\in@{#1}{#2}}\x\ifin@}
%
\def\isuppercase#1{%
\instring{#1}{ABCDEFGHIJKLMNOPRSTUVYZ}%
}%
\makeatother
\def\FirstArgX{text}
\newcommand\skaksymb[2][]{\begingroup%
\def\SecondArgX{#1}%
\ifx\FirstArgX\SecondArgX \usetextfig\textsymfigsymbol{#2}\else%
\if\isuppercase{#2}\textsymfigsymbol{#2}% \usewhitefig
\else%
\useblackfig\textsymfigsymbol{#2}\fi\fi%
\endgroup}
\begin{document}
\section{Old}
\textsymfigsymbol{K}, \textsymfigsymbol{k},
\begingroup
\usewhitefig\textsymfigsymbol{K}
\useblackfig\textsymfigsymbol{p},
\textsymfigsymbol{N}
\usewhitefig\textsymfigsymbol{R},
\usetextfig\textsymfigsymbol{R}
\endgroup
\section{New}
\begin{tcblisting}{notitle, sidebyside, boxrule=0.4pt}
\skaksymb{K},
\skaksymb{k},
\skaksymb[text]{K}
\end{tcblisting}
\section{In Text}
ABC\skaksymb{K}abc\skaksymb{k}, \skaksymb[text]{k}
{\Huge ABC\skaksymb{K}abc\skaksymb{k}, \skaksymb[text]{k} }
{\footnotesize ABC\skaksymb{K}abc\skaksymb{k}, \skaksymb[text]{k}}
\section{In chess-annotation}
\newchessgame[id=MyGame]
\hidemoves{1.e4 e5 2. Nf3 Nc6
3. Bb5 Nf6 4. O-O Nxe4 5.Bxc6 bxc6
6. Kh1 Rg8
}
%\printchessgame[id=MyGame, style=styleCx]
\xskaknewstyleitem[%
template=UF,% a predefined style item
beforewhite={\usewhitefig},
beforeblack={\useblackfig},
afterblack=\color{black}\hspace{1.25ex}
]{myitems}
\xskakaddtostyle[%
font=\normalfont,% <--- he wants something here....
styleitem=myitems
]{test}
%\printchessgame[id=MyGame, style=test]
\begin{tcbitemize}[sharp corners, raster equal height=rows,
colback=white,
raster column skip=0mm,
boxrule=1.2pt, boxsep=1ex,
]
\tcbitem[left=0pt] \chessboard[]
\tcbitem[] \printchessgame[id=MyGame, style=test]
\end{tcbitemize}
\end{document}