Is it correct to call a Savitsky-Golay filter of degree 0 a simple moving average?
Yes you can consider a zeroth (or first) order SG filter as a moving average filter. Below MATLAB / Octave code computes the impulse response of a SG filter of order $N$ and length $2M+1$ :
% Savitzky-Golay Filter
%
clc; clear all; close all;

N = 0;                      % a0,a1,...,aN : Nth order polynomial
M = 3;                      % x[-M],...,x[M] : 2M + 1 data

A = zeros(2*M+1,N+1);
for n = -M:M
    A(n+M+1,:) = n.^[0:N];
end

H = (A'*A)^(-1)* A';        % LSE fit matrix

h = H(1,:);                 % S-G filter impulse response (non-causal symmetric FIR)

figure,subplot(2,1,1)
stem([-M:M],h);
title(['Impulse response h[n] of Savitzky-Golay filter of order N = ' num2str(N), ' and window size 2M+1 =  ' , num2str(2*M+1)]);

subplot(2,1,2)
plot(linspace(-1,1,1024), abs(fftshift(fft(h,1024))));
title('Frequency response magnitude of h[n]');

figure,plot(linspace(-1,1,1024), 20*log10(abs(fftshift(fft(h,1024)))));
title('Frequency response magnitude of h[n]');

The impulse response for $N=0$ is :

as can be seen, it's a moving average (constant) impulse response.