Non ho mai usato il datalist ma con la GridView in genere mi comporto in questo modo :

codice:
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# FormattaData(DataBinder.Eval(Container.DataItem,"DataCreazione")) %>'></asp:Label>
</ItemTemplate>
e poi nel code behind implemento la funzione FormattaData()

codice:
    /// <summary>
    /// FormattaData
    /// </summary>
    /// <param name="ValoreData"></param>
    /// <returns></returns>
    public string FormattaData(object ValoreData) 
    {
        DateTime DateRet;
        if (DateTime.TryParse(ValoreData.ToString(), out DateRet))
        {
            return DateRet.ToString("dd-MM-yyyy");
        }
        else
        {
            return "";
        }
        
    }