Bar Calenderは一列の表示ということで
Calendarのように1週間で折り返す必要がないため
曜日をカウントしていません。
なので
for (var i=weeks; i > 0; i--) {
の行の前に
youbi = 7-start+1;
を、

dates[position].color = "#FFFFFF";
の行の後に
if (youbi == 1) {
youbi = 7;
} else {
youbi--;
}
if(youbi == 7){
dates[position].color = "#FF0000";
}
if(youbi == 1){
dates[position].color = "#0000FF";
}
を追加したら動くんじゃないでしょうか?