думаю, для масштабирования надо координаты каждой точки домножить на эту самую матрицу масштабирования (только не пойму зачем матрица 3х3 в плосоксти?..)
Перемножение матриц - в Wiki или в гугле алгоритм есть.
Далее остается записать в массив(ы) координаты шести точек и соединять их линиями
Код:
Canvas.MoveTo(x[0],y[0]);
for i:=1 to 5 do
Canvas.LineTo(x[i],y[i]);
Canvas.LineTo(x[0],y[0]);
по кнопкам масштабирования - домножать.