First of all, try //echo -a %Dec , just to see what %Dec contains. Looking at the result, you can see that you have to evaluate that $decode( string ,m) to get the channel name back:
alias stats {
echo -a [color:green]$([/color]$$1[color:red]-[/color][color:green],2)[/color]
}
However, instead of evaluating %Dec (= $$1-) twice, why don't you pass %Chan to the alias?
...
stats %Chan
...
alias stats {
echo -a $$1-
}