Problem 2.2 in Loring Tu's Introduction to Manifolds another seemingly innocent problem in Loring Tu's Introduction to Manifolds is 2.2 (Algebra structure in $C_p^\infty$) that says

Define carefully addition, multiplication, and scalar multiplication in $C_p^\infty$. Prove that addition in $C_p^\infty$ is commutative.

That "carefully" is somehow scaring me as I found pretty obvious (probably too much) where some pages before the author said "the addition and multiplication of functions induce corresponding operations on
$C_p^\infty$ making it into an algebra over $\mathbb{R}$".
In particular, if two real valued functions $f_1$ and $f_2$ have the same values in the same neighborhood $U$ of $p$ and $g_1$ and $g_2$ have the same values (different from $f$) in the same neighborhood I can pick $f_1+g_1$ or $f_2+g_1$ or $g_2+f_2$ etc. as all valid representatives of the sum of the two germs $f$ and $g$ at $p$, where commutativity and smoothness of the sum would derive from the properties of the real valued sum and of the derivation respectively ... or am I missing something here?
Thanks for any hint!
 A: The definition of a germ is given as follows:

Consider the set of all pairs $(f,U)$,where $U$ is a neighborhood of p and $f:U\to\Bbb R$ is a $C^\infty$ function. We say that $(f,U)$ is equivalent to $(g,V)$ if there is an open set $W \subset U \cap V$ containing $p$ such that $f = g$ when restricted to $W$. This is clearly an equivalence relation because it is reflexive, symmetric, and transitive. The equivalence class of $(f,U)$ is called the $germ$ of $f$ at $p$.

I will use $[(f,U)]$ to denote the equivalence class of $(f,U)$.  Note that ultimately, we need to be able to define $[(f,U)] + [(g,V)]$ given any $C^\infty$ functions $f,g$ and neighborhoods $U,V$ of $p$.
In other words, given an $[(f,U)]$ and $[(g,V)]$, your definition should be able to let us generate a function $h$ and neighborhood $W$ for which $[(f,U)] + [(g,V)] = [(h,W)]$.  
In order for this definition to be "well defined", it needs to be defined in such a way that if $(f_1,U_1)\sim(f_2,U_2)$ and $(g_1,V_1) \sim (g_2,V_2)$, then the $h,W$ corresponding to $[(f_1,U_1)] + [(g_1,V_1)]$ matches the equivalence class of $[(f_2,U_2)] + [(g_2,V_2)]$.

One valid definition is as follows: 

 Given $(f,U)$ and $(g,V)$, we define $[(f,U)] + [(g,V)] = [(h,W)]$, where $W = U \cap V$ and $h:W \to \Bbb R$ is defined by $h(x) = f(x) + g(x)$.

