Our limit of detection for alkaline phosphatase in our CE-LIF based assay was 0.02 molecules. One should be able to detect individual molecules if one designed the experiment to do so.
What you need to do is fill the capillary with buffer containing substrate and very dilute enzyme. It needs to be sufficiently dilute that only 10 or so enzyme molecules will be present in the capillary. The capillary we used was over 70 cm long. On molecular terms, the individual enzyme molecules are really far apart. If you let the sample incubate the enzyme molecules will convert substrate into product. Since you only incubate for a few minutes there is not time for the newly formed product to diffuse very far. It stays in the immediate vicinity of the enzyme molecule which formed it. This makes localized pools of product. When you sweep these pools past the detector you see discrete peaks, each representing the activity of a single enzyme molecule. The interesting this is that individual molecules of a given type of enzyme do not have the same activities. Nobody really knows why. In my laboratory we are interested in figuring out why they differ (yet another sales pitch to potential graduate students).
The enzyme, substrate and product all have different charge-to-mass ratios and therefore different electrophoretic mobilities. If one incubates the enzyme and then subjects the sample to a brief period of high voltage the enzyme will move away from the product it just formed into fresh substrate. You can now incubate it again. This allows multiple incubations of the same molecule. If one varies temperature one can determine the activation energy of catalysis of a single molecule. We did this. If one could vary concentration of substrates/inhibitors one could do single enzyme molecule kinetics. I'd like to do this sometime.
Why would you want to study enzymes one molecule at a time?