Not really. Surface shader is basically just an empty shader that takes lighting into account. Unity’s Standard shader has much more functionality, like optional features/texture inputs that are dynamically set depending what parameters the user has set.
Now our “grittyness” shader just a Standard shader with few lines of additional code so we can easily replace all surfaces with our gritty shader. If we would have a surface shader instead, we’d need to do as many versions of those as we have variations of different Standard shaders in the scene (diffuse, diff+normal, diff+height+ao, …) and that’s definitely something we don’t want to do.