Embrac package and enumerate

Section 9 Watch Out! of the embrac documentation explains that embrac only applies to \emph{...}, but not to {\em ...} and {\itshape ...}. Since amsthm's lemma uses \itshape to typeset its body in italics, embrac can't be used here. It would be a non-trivial (impossible?) exercise to convert embrac's behaviour for the macro \emph to the switch \itshape, so you will have to find a different work-around. The easiest is to use \upshape for the label. Since you use enumitem you can pack that up into a global definition.

\documentclass{article}
\usepackage{amsmath, amsthm, enumitem}
\usepackage{embrac}
\newtheorem{lemma}{Lemma}

\setlist[enumerate]{label=\upshape(\roman*)}

\begin{document}

\begin{lemma}
This holds:
\begin{enumerate}
  \item $a^2+b^2=c^2$.
\end{enumerate}
\end{lemma}

\end{document}

enumerate item in upright font

or define a new list type thmenum

\newlist{thmenum}{enumerate}{1}
\setlist[thmenum]{label=\upshape(\roman*)}

and then use it like this

\begin{lemma}
This holds:
\begin{thmenum}
  \item $a^2+b^2=c^2$.
\end{thmenum}
\end{lemma}

if you want to preserve the original enumerate. The result is the same.

As clemens mentions in the comment, v0.8 of embrac introduces the macro \embparen which can be used as follows

\setlist[enumerate]{label=\embparen{\roman*}}

this also works:

\documentclass{article}
\usepackage{amsmath, amsthm, embrac}
\newtheorem{lemma}{Lemma}
\usepackage{enumitem}

\begin{document}
    \begin{lemma}
This holds:
\begin{enumerate}[label=$(\roman*)$]
    \item $a^2+b^2=c^2$.
\end{enumerate}
    \end{lemma}
\end{document}

enter image description here