The technical reason for your problems is that pic cs: is not appropriate here. That is, strictly speaking I do not know what is appropriate in your code as you do not show the preamble. Assuming you are loading the tikzmark library, it is not. In more detail, the later versions of tikzmark have a command \tikzmarknode, which you may or may not be using (hard to tell without preamble). If you are using it, you do not really use its features. You can forget about all this \highlight stuff and just use the corresponding directives in the options of \tikzmarknode. This also solves the problem mentioned in your question.
\documentclass{article}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{tikzmark}
\begin{document}
\begingroup\tikzset{every tikzmarknode/.append style={inner sep=3pt,rounded
corners}}
\begin{align*}
\sum\limits_{i=1}^{3}\sum\limits_{j=1}^{4} a_{ij}&=
\tikzmarknode[fill=red!20]{red1}{\sum\limits_{j=1}^{4}a_{1j}} +
\tikzmarknode[fill=green!20]{green1}{\sum\limits_{j=1}^{4}a_{2j}} +
\tikzmarknode[fill=blue!20]{blue1}{\sum\limits_{j=1}^{4}a_{3j}}\\
\\
&=
\tikzmarknode[fill=red!20]{red2}{a_{11} + a_{12} + a_{13} + a_{14}} +
\tikzmarknode[fill=green!20]{green2}{a_{21} + a_{22} + a_{23} + a_{24}} +
\tikzmarknode[fill=blue!20]{blue2}{a_{31} + a_{32} + a_{33} + a_{34}}
\end{align*}\endgroup
\begin{tikzpicture}[overlay, remember picture,>=stealth,very thick]
\draw[->,red!20] (red1.south) to[out=-90,in=120,looseness=0.3] (red2.north);
\draw[->,green!20] (green1) to[out=-90,in=120,looseness=0.3] (green2);
\draw[->,blue!20] (blue1) to[out=-90,in=135,looseness=0.3] (blue2);
\end{tikzpicture}
\end{document}

The current version of tikzmark that is on CTAN has some bug that is fixed in it the GitHub version. So you could either download it from there, or temporarily work with:
\documentclass{article}
\usepackage{amsmath}
\usepackage{tikz}
\newcommand{\tikznode}[3][]{%based on https://tex.stackexchange.com/a/402466/121799
\ifmmode%
\tikz[remember picture,baseline=(#2.base),inner sep=0pt] \node[#1] (#2) {$#3$};%
\else
\tikz[remember picture,baseline=(#2.base),inner sep=0pt] \node[#1] (#2) {#3};%
\fi}
\begin{document}
\begingroup\tikzset{every node/.append style={inner sep=3pt,rounded
corners}}
\begin{align*}
\sum\limits_{i=1}^{3}\sum\limits_{j=1}^{4} a_{ij}&=
\tikznode[fill=red!20]{red1}{\sum\limits_{j=1}^{4}a_{1j}} +
\tikznode[fill=green!20]{green1}{\sum\limits_{j=1}^{4}a_{2j}} +
\tikznode[fill=blue!20]{blue1}{\sum\limits_{j=1}^{4}a_{3j}}\\
\\
&=
\tikznode[fill=red!20]{red2}{a_{11} + a_{12} + a_{13} + a_{14}} +
\tikznode[fill=green!20]{green2}{a_{21} + a_{22} + a_{23} + a_{24}} +
\tikznode[fill=blue!20]{blue2}{a_{31} + a_{32} + a_{33} + a_{34}}
\end{align*}\endgroup
\begin{tikzpicture}[overlay, remember picture,>=stealth,very thick]
\draw[->,red!20] (red1.south) to[out=-90,in=120,looseness=0.3] (red2.north);
\draw[->,green!20] (green1) to[out=-90,in=120,looseness=0.3] (green2);
\draw[->,blue!20] (blue1) to[out=-90,in=135,looseness=0.3] (blue2);
\end{tikzpicture}
\end{document}
which yields the same output (in this example).
\documentclassand loads all the packages and/or provides all commands. In particular, there are several versions of\highlightand it is not clear which you are using. – Jun 09 '19 at 01:03