The dissolution of solids has created spectacular geomorphologies ranging from centimeter-scale cave scallops to the kilometer-scale stone forests of China and Madagascar. Mathematically, dissolution processes are modeled by a Stefan problem, which describes how the motion of a phase-separating interface depends on local concentration gradients, coupled to a fluid flow. Simulating these problems is challenging, requiring the evolution of a free interface whose motion depends on the normal derivatives of an external field in an ever-changing domain. Moreover, density differences created in the fluid domain induce self-generated convecting flows that further complicate the numerical study of dissolution processes. In this contribution, we present a numerical method for the simulation of the Stefan problem coupled to a fluid flow. The scheme uses the Immersed Boundary Smooth Extension method to solve the bulk advection-diffusion and fluid equations in the complex, evolving geometry, coupled to a {theta}-L scheme that provides stable evolution of the boundary. We demonstrate third-order temporal and pointwise spatial convergence of the scheme for the classical Stefan problem, and second-order temporal and pointwise spatial convergence when coupled to flow. Examples of dissolution of solids that result in high-Rayleigh number convection are numerically studied, and qualitatively reproduce the complex morphologies observed in recent experiments.