I can’t speak for all of them, but I use Spark Kernel and it works very well for using both Scala and Spark.
I found IScala and Jupyter Scala less stable and less polished. Jupyter Scala always prints every variable value after I execute a cell; I don’t want to see this 99% of the time.
Spark Kernel is my favourite. Both for Spark and plain old Scala.