Marble is basically compressed limestone. Any acidic cleaners will etch, dull and stain the surface, including vinegar, citrus cleaners, and lime/calcium cleaners.
If you are trying to remove an old stain, create a dense paste of more baking soda and less water. Then place the paste over the stain, allowing it to function for a few minutes. After that wipe off the baking soda paste. If it is needed you can repeat the procedure until the stain vanishes.
If the stain is persistent and is still there you can try removing it with ammonia solution. Make the area of the stain damp with 10% ammonia, diluted in water. Ammonia is knows as a base solution, so it is suitable for removing stains from marble.
The final stage of the stain removal us rinsing. Rinse the solution from your marble well to eliminate any residue, left from the cleaning ingredients on it.
I advise to use gloves when removing the stain with ammonia. They will protect your hands. Ventilate the room, in which you use ammonia for removing stains, because it is toxic.
Is it real marble or cultured marble
Yes, real marble is a ton of work to clean without soap scum and hard water making it dull and etched.
Once you get it clean, seal and repair-seal it with a non/yellowing marble sealer every 3 months. If it’s used every day, then more frequently.
I learned that the hard way.