For me the following definitions seem to describe the professional business pretty accurately (be it medicine, dentisty, law etc):
Firm: This is the organisation as a whole, consisting of partners and their employees; the firm might operate out of several different offices, or 'practices' in different locations.
Practice: This describes either the whole business in the abstract, or a single physical office location, e.g. a firm of veterinarians might have a practice in Edinburgh and one in Glasgow.
Surgery: This describes the facility whereby patients or clients may have access to the service, hence an 'open surgery' or a 'drop-in surgery' e.g. 'Please note this practice runs its surgery from 10 a.m. - 12 noon'. When the surgery shuts, the practice may remain open.
I think 'surgery' is used in colloquial BE to refer to the actual premises where a dentist/doctor/vet works, although all those professions also used the word to denote the period when they will see patients/customers.
However, a lawyer, for example, would not call his place of work a 'surgery', albeit he might operate a 'surgery' from it, again referring to the period when he sees clients.
Perhaps the different uses between the medical/dental professions on the one hand, and the other non-medical professions, on the other, arose because medics actually perform 'surgery', i.e. 'surgical procedures', whereas non-medics don't - they just stole the word for the sake of convenience.