Perfecto!!!
Lo de la variable de sesión ha sido un puntazo, jeje!! das mil vueltas y la solución esta muy cerca...
Lo unico decir que para añadir una fila nueva a un dataset e insertarle a la fila datos funciona mejor de esta forma:
Dim sesionDataset As DataSet
Dim dr As DataRow
'Obtengo el dataset de la variable de sesión
sesionDataset = Session("dataset")
'Creo una linea con la misma extructura que las que tiene el dataset
dr = sesionDataset.Tables(0).NewRow()
'Le inserto el contenido a cada columna
dr(0) = "9"
dr(1) = "Hola"
dr(2) = "Hola"
'Le asigno la nueva linea al dataset
sesionDataset.Tables(0).Rows.Add(dr)
'Para visualizar el DataGrid
DataGrid1.DataSource = sesionDataset
DataGrid1.DataBind()