**Edit** (11/12/12): I added an explanation of the phrase "this is essentially equivalent to $X$ being $S_2$" at the end to answer aglearner's question in the comments.
[See also here and here]

Dear Jesus,

I think there are several problems with your question/desire to define a canonical divisor on *any* algebraic variety.

First of all, what is *any* algebraic variety? Perhaps you mean a quasi-projective variety (=reduced and of finite type) defined over some (algebraically closed) field.

OK, let's assume that $X$ is such a variety. Then what is a *divisor* on $X$? Of course, you could just say it is a formal linear combination of *prime divisors*, where a prime divisor is just a codimension 1 irreducible subvariety.

OK, but what if $X$ is not equidimensional? Well, let's assume it is, or even that it is irreducible.

Still, if you want to talk about divisors, you would surely want to say when two divisors are *linearly equivalent*. OK, we know what that is, $D_1$ and $D_2$ are linearly equivalent iff $D_1-D_2$ is a *principal divisor*.

But, what is a principal divisor? Here it starts to become clear why one usually assumes that $X$ is normal even to just talk about divisors, let alone defining the canonical divisor. In order to define principal divisors, one would need to define something like the *order of vanishing* of a regular function along a prime divisor. It's not obvious how to define this unless the local ring of the general point of any prime divisor is a DVR. Well, then this leads to one to want to assume that $X$ is $R_1$, that is, regular in codimension $1$ which is equivalent to those local rings being DVRs.

OK, now once we have this we might also want another property: If $f$ is a regular function, we would expect, that the zero set of $f$ should be 1-codimensional in $X$. In other words, we would expect that if $Z\subset X$ is a closed subset of codimension at least $2$, then if $f$ is nowhere zero on $X\setminus Z$, then it is nowhere zero on $X$. In (yet) other words, if $1/f$ is a regular function on $X\setminus Z$, then we expect that it is a regular function on $X$. This in the language of sheaves means that we expect that the push-forward of $\mathscr O_{X\setminus Z}$ to $X$ is isomorphic to $\mathscr O_X$. Now this is essentially equivalent to $X$ being $S_2$.

So we get that in order to define *divisors* as we are used to them, we would need that $X$ be $R_1$ and $S_2$, that is, *normal*.

Now, actually, one can work with objects that behave very much like divisors even on non-normal varieties/schemes, but one has to be very careful what properties work for them.

As far as I can tell, the best way is to work with *Weil divisorial sheaves* which are really reflexive sheaves of rank $1$. On a normal variety, the sheaf associated to a Weil divisor $D$, usually denoted by $\mathcal O_X(D)$, is indeed a reflexive sheaf of rank $1$, and conversely every reflexive sheaf of rank $1$ on a normal variety is the sheaf associated to a Weil divisor (in particular a reflexive sheaf of rank $1$ on a regular variety is an invertible sheaf) so this is indeed a direct generalization. One word of caution here: $\mathcal O_X(D)$ may be defined for Weil divisors that are not Cartier, but then this is (obviously) not an invertible sheaf.

Finally, to answer your original question about canonical divisors. Indeed it is possible to define a canonical divisor (=Weil divisorial sheaf) for all quasi-projective varieties. If $X\subseteq \mathbb P^N$ and $\overline X$ denotes the closure of $X$ in $\mathbb P^N$, then the dualizing complex of $\overline X$ is
$$
\omega_{\overline X}^\bullet=R{\mathscr H}om_{\mathbb P^N}(\mathscr O_{\overline X}, \omega_{\mathbb P^N}[N])
$$
and the canonical *sheaf* of $X$ is
$$
\omega_X=h^{-n}(\omega_{\overline X}^\bullet)|_X=\mathscr Ext^{N-n}_{\mathbb P^N}(\mathscr O_{\overline X},\omega_{\mathbb P^N})|_X
$$
where $n=\dim X$. (Notice that you may disregard the derived category stuff and the dualizing complex, and just make the definition using $\mathscr Ext$.) Notice further, that
if $X$ is normal, this is the same as the one you are used to and otherwise it is a reflexive sheaf of rank $1$.

As for your formula, I am not entirely sure what you mean by "where the $D_i$ are representatives of all divisors in the Class Group". For toric varieties this can be made sense as in Josh's answer, but otherwise I am not sure what you had in mind.

(Added on 11/12/12):

**Lemma** A scheme $X$ is $S_2$ if and only if for any $\iota:Z\to X$ closed subset of codimension at least $2$, the natural
map $\mathscr O_X\to \iota_*\mathscr O_{X\setminus Z}$ is an isomorphism.

**Proof**
Since both statements are local we may assume that $X$ is affine.
Let $x\in X$ be a point and $Z\subseteq X$ its closure in $X$. If $x$ is a codimension at most $1$ point, there is nothing to prove, so we may assume that $Z$ is of codimension at least $2$.

Considering the exact sequence (recall that $X$ is affine):
$$
0\to H^0_Z(X,\mathscr O_X) \to H^0(X,\mathscr O_X) \to H^0(X\setminus Z,\mathscr O_X) \to H^1_Z(X,\mathscr O_X) \to 0
$$
shows that $\mathscr O_X\to \iota_*\mathscr O_{X\setminus Z}$ is an isomorphism
if and only if
$H^0_Z(X,\mathscr O_X)=H^1_Z(X,\mathscr O_X)=0$ the latter condition is equivalent to
$$
\mathrm{depth}\mathscr O_{X,x}\geq 2,
$$
which given the assumption on the codimension is exactly the condition that $X$ is $S_2$ at $x\in X$. $\qquad\square$

noprojective (or more generally as Chris says, proper) toric variety is Calabi--Yau. Also, as John Christian says in the first comment, the formula for toric varieties is K_X = O(-\sum D_i) where the sum is over the torus invariant divisors ---notrepresentatives of all divisors in the class group. Indeed, the class group will almost always be infinite, in which casw such a sum will not be defined. $\endgroup$ – user5117 Aug 16 '10 at 14:02