I think you did something very complicated while the solution could have been much more easy. Moreover it is preferable to not modify the default themes
: if you do it, at least change theme name.
For example, look at this code:
\documentclass{beamer}
\usetheme{Montpellier}
\begin{document}
\title{My title}
\author{My name}
\institute{My institute}
\makeatletter
\definecolor{beamer@blendedblue}{rgb}{0.5,0.5,0.3} % changed this
\setbeamercolor{normal text}{fg=black,bg=white}
\setbeamercolor{alerted text}{fg=red}
\setbeamercolor{example text}{fg=green!50!black}
\setbeamercolor{structure}{fg=beamer@blendedblue}
\setbeamercolor{background canvas}{parent=normal text}
\setbeamercolor{background}{parent=background canvas}
\setbeamercolor{palette primary}{fg=yellow,bg=yellow} % changed this
\setbeamercolor{palette secondary}{use=structure,fg=structure.fg!100!green} % changed this
\setbeamercolor{palette tertiary}{use=structure,fg=structure.fg!100!green} % changed this
\makeatother
\begin{frame}
\titlepage
\end{frame}
\begin{frame}{A frame}
\begin{itemize}
\item hello
\item hello again
\end{itemize}
\end{frame}
\end{document}
In a very simple manner I got:


If you want to create your own color theme, create a file called for example beamercolorthememyct.sty
as:
\definecolor{beamer@blendedblue}{rgb}{0.5,0.5,0.3} % changed this
\setbeamercolor{normal text}{fg=black,bg=white}
\setbeamercolor{alerted text}{fg=red}
\setbeamercolor{example text}{fg=green!50!black}
\setbeamercolor{structure}{fg=beamer@blendedblue}
\setbeamercolor{background canvas}{parent=normal text}
\setbeamercolor{background}{parent=background canvas}
\setbeamercolor{palette primary}{fg=yellow,bg=yellow} % changed this
\setbeamercolor{palette secondary}{use=structure,fg=structure.fg!100!green} % changed this
\setbeamercolor{palette tertiary}{use=structure,fg=structure.fg!100!green} % changed this
You can put it in the same folder of your .tex
presentation file (I have TeXLive and it works) or in your personal tree.
Then, the MWE shown above will become:
\documentclass{beamer}
\usetheme{Montpellier}
\usecolortheme{myct}
\begin{document}
\title{My title}
\author{My name}
\institute{My institute}
\begin{frame}
\titlepage
\end{frame}
\begin{frame}{A frame}
\begin{itemize}
\item hello
\item hello again
\end{itemize}
\end{frame}
\end{document}
with the same two frames as graphical result.
EDIT
To change just colors in the upper and lower line head you should use the proper keys. For example adding these lines to your theme color
:
\setbeamercolor{upper separation line head}{bg=green}
\setbeamercolor{lower separation line head}{bg=red}
allows you to get:


The color of the line used by cancel
can be changed with
\renewcommand\CancelColor{<color command>}
You could include this in a new cancel-command where an optional argument defines the color.

\documentclass{article}
\usepackage{cancel}
\usepackage{xcolor}
\newcommand\Ccancel[2][black]{\renewcommand\CancelColor{\color{#1}}\cancel{#2}}
\begin{document}
\[
\Ccancel{x+1} \qquad \Ccancel[blue]{x-1}
\]
\end{document}
Best Answer
Most of the beamer element colors in a beamer template are dependent on other colors. Look for example at the default color theme. Nearly all the element's colors are dependent on these four "base colors".
Also there are the four palette colors (again here the definition in the default color theme), which are kind of important.
So if you design your own color theme you should keep that in mind. Using these "base colors" make it much easier and faster to define your own color theme.
In short: if you use the default color theme, changing the beamer color
structure
should already change a lot.